Warning, file /include/DD4hep/detail/ShapesInterna.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #ifndef DD4HEP_DETAIL_SHAPESINTERNA_H
0014 #define DD4HEP_DETAIL_SHAPESINTERNA_H
0015
0016
0017 #include <DD4hep/Shapes.h>
0018
0019
0020 namespace dd4hep {
0021
0022
0023
0024
0025
0026
0027
0028
0029 class TwistedTubeObject: public TGeoTubeSeg {
0030 private:
0031
0032 TwistedTubeObject(TwistedTubeObject&&) = delete;
0033
0034 TwistedTubeObject(const TwistedTubeObject&) = delete;
0035
0036 TwistedTubeObject& operator=(TwistedTubeObject&&) = delete;
0037
0038 TwistedTubeObject& operator=(const TwistedTubeObject&) = delete;
0039 public:
0040 double fPhiTwist {0.0};
0041 double fNegativeEndz {0.0};
0042 double fPositiveEndz {0.0};
0043 int fNsegments {0};
0044
0045 public:
0046
0047 TwistedTubeObject() = default;
0048
0049 TwistedTubeObject(const char* pName,
0050 double twistedangle,
0051 double endinnerrad,
0052 double endouterrad,
0053 double negativeEndz,
0054 double positiveEndz,
0055 int nseg,
0056 double totphi);
0057
0058 virtual ~TwistedTubeObject() = default;
0059
0060 double GetPhiTwist () const { return fPhiTwist; }
0061
0062 double GetNegativeEndZ() const { return fNegativeEndz; }
0063
0064 double GetPositiveEndZ() const { return fPositiveEndz; }
0065
0066 int GetNsegments() const { return fNsegments; }
0067
0068
0069 virtual TGeoShape *GetMakeRuntimeShape(TGeoShape* mother, TGeoMatrix* mat) const override;
0070
0071 virtual void InspectShape() const override;
0072
0073 ClassDefOverride(TwistedTubeObject,0);
0074 };
0075 }
0076 #endif