14#include <TGeoVolume.h>
16#include <TGeoPhysicalNode.h>
43 void InitFromGDML(
const char *gdmlFile,
const char *setupName );
134 TGeoNode *
GetPVF(
int part,
int layer,
int scin );
137 TGeoNode *
GetAl(
int part,
int layer );
144 TGeoNode *
GetModule(
int part,
int module );
146 TGeoNode *
GetStrip(
int part,
int module,
int strip );
164 Int_t
GetPart(TGeoPhysicalNode* phyNode);
167 void Draw(Option_t *option);
173 static const int m_kPart = 3;
174 static const int m_kLayerBr = 2;
175 static const int m_kLayerEc = 1;
176 static const int m_kScinBr = 88;
177 static const int m_kScinEc = 48;
178 static const int m_kBucketEc = 1;
179 static const int m_kBucketBr = 2;
181 static const int m_kModuleEc = 36;
182 static const int m_kStripEc = 12;
183 static const int m_kChamberNodeNb = 6;
184 static const int m_kContainerNodeNb = 0;
185 static const int m_kBoard1NodeNb = 30;
187 static const int TOF_TIME_FACTOR = 1000000;
188 static const int TOF_CHARGE_FACTOR = 1000000;
198 TGeoNode *m_NodePVF[m_kPart][m_kLayerBr][m_kScinBr];
199 TGeoNode *m_NodeAl[m_kPart][m_kLayerBr];
200 TGeoNode *m_NodeScin[m_kPart][m_kLayerBr];
201 TGeoPhysicalNode *m_PhysicalScin[m_kPart][m_kModuleEc][m_kScinBr];
204 TGeoNode *m_NodeModule[m_kPart][m_kModuleEc];
205 TGeoNode *m_NodegasContainer[m_kPart][m_kModuleEc];
206 TGeoNode *m_NodebareChamber[m_kPart][m_kModuleEc];
207 TGeoNode *m_NodepcbBoard1[m_kPart][m_kModuleEc];
208 TGeoNode *m_NodeStrip[m_kPart][m_kModuleEc][m_kStripEc];
212 const TObjArray *m_TofDigiCol;
219 Tof2DScin *m_Tof2DScin[m_kPart][m_kModuleEc][m_kScinBr];
TGeoNode * GetAl(int part, int layer)
Get Al node;.
void SetQuarterVisible()
Set quater visible;.
int GetModuleNb(int part)
TGeoNode * GetpcbBoard1(int part, int module)
Get pcbBoard1 node;.
TGeoVolume * GetVolumeScin(int part)
Get scintillator volume;.
void SetVolumeTof(TGeoVolume *vol)
Set Tof volume, while initializing from ROOT;.
void InitFromROOT(TGeoVolume *vol)
Initialize ROOTGeo from TGeoVolume logicalTof.
int GetContainerNodeNb(int module)
TGeoVolume * GetVolumeAl(int part, int layer)
Get Al volume;.
TGeoNode * GetModule(int part, int module)
Get module node;.
int GetBoard1NodeNb(int module)
TGeoNode * GetgasContainer(int part, int module)
Get gasContainer node;.
int GetPartNb()
Get number of part;.
void SetPhysicalDefaultVis()
int GetChamberNodeNb(int module)
void InitFromGDML(const char *gdmlFile, const char *setupName)
Initialize ROOTGeo from GDML.
TGeoVolume * GetVolumeTof()
Get Tof volume;.
TGeoVolume * GetVolumeBucket(int part)
Get bucket volume;.
void SetHalfVisible()
Set half visible;.
void SetQMatch(Bool_t input)
TGeoNode * GetbareChamber(int part, int module)
Get bareChamber node;.
void SetNoEndVisible()
Set noend visible;.
void SetHits()
Set all physicalNodes corresponding to digiCol;.
TGeoVolume * GetVolumePart(int part)
Get assembly volume; part=0,2 for AssemblyEc, 1 for AssemblyBr;
void SetDetector()
Draw Detecor (what is detector depends on you)
void DrawHits(Option_t *option)
Draw 2D hits.
Tof2DScin * Get2DScin(Int_t part, Int_t layer, Int_t scin)
Get Tof2DScin;.
TGeoNode * GetStrip(int part, int module, int strip)
Get strip node;.
void SetVisTofDetector()
Set Tof detector visibility;.
int GetScinNb(int part)
Get number of scintillators on each part;.
void SetPhysicalNode()
Set the pointers to the physical nodes;.
TGeoNode * GetPVF(int part, int layer, int scin)
Get PVF node;.
void Init2DGeometry()
Initialize 2D Geometry.
TGeoVolume * GetVolumePVF(int part, int layer)
Get PVF volume;.
void SetTMatch(Bool_t input)
void SetVisTofHits()
Set Tof hits visibility;.
int GetStripNb(int module)
TGeoPhysicalNode * GetPhysicalScin(int part, int scin)
Get scintillator physical node;.
Int_t GetPart(TGeoPhysicalNode *phyNode)
Get part no of a scintillator physcial node.
TGeoNode * GetScin(int part, int layer)
Get scintillator node;.
void SetNode()
Set the pointers to theirs nodes;.
void SetVolumeDefaultVis()
Set default visual attributes;.
void SetAllVisible()
Set all visible;.