10#ifndef RICH_GEO_CREATOR
11#define RICH_GEO_CREATOR
21class TGeoVolumeAssembly;
25class TGeoCompositeShape;
133 TGeoVolume*
CreateStuds(
double zpos,
double lenHalf,
double angle);
141 TGeoCompositeShape*
MakeSubtraction(
const std::string& name, TGeoShape* left, TGeoShape* right,
142 TGeoMatrix* lmat =
nullptr, TGeoMatrix* rmat =
nullptr);
143 TGeoCompositeShape*
MakeUnion(
const std::string& name, TGeoShape* left, TGeoShape* right, TGeoMatrix* lmat =
nullptr,
144 TGeoMatrix* rmat =
nullptr);
145 TGeoCompositeShape*
MakeIntersection(
const std::string& name, TGeoShape* left, TGeoShape* right,
146 TGeoMatrix* lmat =
nullptr, TGeoMatrix* rmat =
nullptr);
148 TGeoCombiTrans*
MakeCombiTrans(
double dx,
double dy,
double dz,
double rotX,
double rotY,
double rotZ);
149 TGeoTranslation*
MakeTrans(
double dx,
double dy,
double dz);
150 TGeoRotation*
MakeRot(
double rotX,
double rotY,
double rotZ);
void SetGeoName(const std::string &geoName)
double fPipeOuterRadiusEntrance
TGeoRotation * MakeRot(double rotX, double rotY, double rotZ)
TGeoVolumeAssembly * CreateMirrorSupportBelts()
TGeoTranslation * MakeTrans(double dx, double dy, double dz)
double fRichEntranceWidth
double fPipeThicknessEntrance
TGeoVolumeAssembly * CreateCameraContainer()
TGeoVolumeAssembly * CreateMainFrame()
TGeoCompositeShape * MakeIntersection(const std::string &name, TGeoShape *left, TGeoShape *right, TGeoMatrix *lmat=nullptr, TGeoMatrix *rmat=nullptr)
TGeoVolume * CreateSensitivePlane()
TGeoVolume * CreatePillarConnection()
TGeoVolume * CreateRichEntrance()
TGeoCompositeShape * MakeSubtraction(const std::string &name, TGeoShape *left, TGeoShape *right, TGeoMatrix *lmat=nullptr, TGeoMatrix *rmat=nullptr)
TGeoCombiTrans * MakeCombiTrans(double dx, double dy, double dz, double rotX, double rotY, double rotZ)
double fPipeOuterRadiusExit
TGeoVolumeAssembly * CreateShieldingBox()
double fCameraTouchRadius
TGeoVolume * CreateCameraModule()
double fPipeThicknessExit
TGeoVolume * CreateRichExit()
void SetAddShieldingBox(bool addShildingBox)
TGeoVolumeAssembly * CreateMirrorSupportPillars()
TGeoVolume * CreatePipeCyl()
double fRichCoveringThickness
RichGeoMaterials fMaterials
TGeoVolume * CreateStuds(double zpos, double lenHalf, double angle)
TGeoVolumeAssembly * CreateMirror()
TGeoVolume * CreatePipe()
TGeoVolume * CreateCameraStrip()
double fRichExitThickness
void SetVolumeColors(bool setVolumeColors)
double fRichEntranceHeight
virtual ~RichGeoCreator()
TGeoCompositeShape * MakeUnion(const std::string &name, TGeoShape *left, TGeoShape *right, TGeoMatrix *lmat=nullptr, TGeoMatrix *rmat=nullptr)
double fRichEntranceThickness
TGeoVolume * CreateRichContainer()
TGeoVolumeAssembly * CreateBeltAssembly()