CbmRoot
CbmMuchGeoScheme.h
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // ----- CbmMuchGeoScheme header file -----
3 // ----- Created 18/02/08 by E. Kryshen
4 // ----- Modified 18/10/2017 by Omveer Singh -----
5 // -------------------------------------------------------------------------
6 
14 #ifndef CbmMuchGeoScheme_H
15 #define CbmMuchGeoScheme_H 1
16 
17 #include <Rtypes.h> // for THashConsistencyHolder, ClassDef
18 #include <RtypesCore.h> // for Int_t, Double_t, Bool_t, Float_t, Char_t
19 #include <TArrayC.h> // for TArrayC
20 #include <TArrayD.h> // for TArrayD
21 #include <TArrayI.h> // for TArrayI
22 #include <TGeoBBox.h> // for TGeoBBox
23 #include <TGeoCone.h> // for TGeoCone
24 #include <TObjArray.h> // for TObjArray
25 #include <TObject.h> // for TObject
26 #include <TString.h> // for TString
27 
28 #include <map> // for map
29 #include <vector> // for vector
30 
31 #include "CbmMuchAddress.h" // for CbmMuchAddress, kMuchLayer, kMuchLayerSide
32 
33 class CbmMuchLayer;
34 class CbmMuchLayerSide;
35 class CbmMuchModule;
36 class CbmMuchModuleGem;
37 class CbmMuchStation;
38 class TGeoHMatrix;
39 class TGeoNode;
40 class TGeoTrap;
41 class TGeoVolume;
42 
43 class CbmMuchGeoScheme : public TObject {
44 
45 public:
48  //void Init(Bool_t isSimulation = kFALSE);
49  static CbmMuchGeoScheme* Instance();
51  Bool_t IsInitialized() { return fInitialized; }
52 
53  // Get geometry objects by indices
54  CbmMuchStation* GetStation(Int_t iStation) const;
55  //Int_t GetStation(const TString& path);
56  CbmMuchLayer* GetLayer(Int_t iStation, Int_t iLayer) const;
58  GetLayerSide(Int_t iStation, Int_t iLayer, Bool_t iSide) const;
60  GetModule(Int_t iStation, Int_t iLayer, Bool_t iSide, Int_t iModule) const;
61 
62  // Get geometry objects by detector id
63  CbmMuchStation* GetStationByDetId(Int_t detId) const;
64  CbmMuchLayer* GetLayerByDetId(Int_t detId) const;
65  CbmMuchLayerSide* GetLayerSideByDetId(Int_t detId) const;
66  CbmMuchModule* GetModuleByDetId(Int_t detId) const;
67 
68  static Int_t GetStationIndex(Int_t address) {
70  }
71  static Int_t GetLayerIndex(Int_t address) {
73  }
74  static Int_t GetLayerSideIndex(Int_t address) {
76  }
77 
78  // fStations->GetEntries();
79  Int_t GetNStations() const { return fStations->GetEntries(); }
80  Int_t GetNAbsorbers() const { return fNabs; }
81  TObjArray* GetStations() const { return fStations; }
82  TObjArray* GetAbsorbers() const { return fAbsorbers; }
83  TGeoCone* GetMuchCave() const { return fMuchCave; }
84  Double_t GetMuchCaveZ0() const { return fMuchZ1 + fMuchCave->GetDz(); }
85  // Double_t GetAbsorberZ0(Int_t i) const {return fMuchZ1+fAbsorberZ1[i]+((TGeoCone*) fAbsorbers->At(i))->GetDz();}
86  Char_t GetAbsorberMat(Int_t i) const { return fAbsorberMat[i]; }
87  Double_t GetAbsorberZ0(Int_t i) {
88  if (i == 0)
89  return fMuchZ1 + fAbsorberZ1[i]
90  + ((TGeoBBox*) fAbsorbers->At(i))->GetDZ();
91  //return fMuchZ1+fAbsorberZ1[i]+((TGeoCone*)fAbsorbers->At(i))->GetDz();
92 
93  else
94  return fMuchZ1 + fAbsorberZ1[i]
95  + ((TGeoBBox*) fAbsorbers->At(i))->GetDZ();
96  }
97 
98 
99  Double_t GetSizeX(const TString& path);
100  Double_t GetSizeY(const TString& path);
101  Double_t GetSizeZ(const TString& path);
102  Double_t GetX(const TString& path);
103  Double_t GetY(const TString& path);
104  Double_t GetZ(const TString& path);
105 
106 
107  Double_t GetModuleDZ(const TString& path);
108  Double_t GetModuleX(const TString& path);
109  Double_t GetModuleY(const TString& path);
110  Double_t GetModuleZ(const TString& path);
111  Double_t GetModulePhi(const TString& path);
112  Double_t GetModuleH1(const TString& path);
113  Double_t GetModuleBl1(const TString& path);
114  Double_t GetModuleTl1(const TString& path);
115 
116 
117  Double_t GetActiveLx() const { return fActiveLx; }
118  Double_t GetActiveLy() const { return fActiveLy; }
119  Double_t GetActiveLz() const { return fActiveLz; }
120  Double_t GetSpacerLx() const { return fSpacerLx; }
121  Double_t GetSpacerLy() const { return fSpacerLy; }
122  Double_t GetSpacerR() const { return fSpacerR; }
123  Double_t GetSpacerPhi() const { return fSpacerPhi; }
124  Double_t GetLayersDz(Int_t st) const { return fLayersDz[st]; }
125 
126  void Init(TObjArray* stations, Int_t flag);
127  void Init(TString digiFileName, Int_t flag);
128  void CreatePointArrays();
129  void CreateHitArrays();
130  void CreateClusterArrays();
131  void ClearPointArrays();
132  void ClearHitArrays();
133  void ClearClusterArrays();
134  std::vector<CbmMuchModule*> GetModules() const;
135  std::vector<CbmMuchModuleGem*> GetGemModules() const;
136  std::vector<CbmMuchModule*> GetModules(Int_t iStation) const;
137  std::vector<CbmMuchLayerSide*> GetLayerSides(Int_t iStation) const;
138  Int_t GetLayerSideNr(Int_t detId) const;
139 
140  void ExtractGeoParameter(TGeoNode* muchNode, const char* volumeName);
141  void StationNode(TGeoNode* MuchObjNode, TString MuchObjPath);
142  void LayerNode(TGeoNode* StNode, Int_t iStation, TString StPath);
143  void ModuleNode(TGeoNode* layerNode,
144  Int_t iStation,
145  Int_t iLayer,
146  TString layerPath);
147  void ActiveModuleNode(TGeoNode* moduleNode,
148  Int_t iStation,
149  Int_t iLayer,
150  Int_t iModule,
151  TString modulePath);
152 
153 
154 private:
156  void NavigateTo(const TString& path);
157  void NavigateModule(const TString& path);
158  void InitModules();
159  Int_t Intersect(Float_t x, Float_t y, Float_t dx, Float_t dy, Float_t r);
160 
161  UInt_t fGeoPathHash;
162  TGeoVolume* fCurrentVolume;
163  TGeoBBox* fVolumeBoxShape;
164  TGeoTrap* fVolumeTrapShape;
165  Double_t fGlobal[3];
166  Double_t fGlobalTrap[3];
167  TGeoHMatrix* fGlobalMatrix;
168 
169  // for backward compatibility
170  Int_t fStation;
171  Int_t fLayer;
172  Int_t fActive;
173  Int_t fGeoID; // Id to distinguish geometry (mcbm/cbm)
174 
176  static Bool_t fInitialized; // Defines whether the instance was initialized
177  static Bool_t
178  fModulesInitialized; // Defines whether grid of the instance was initialized
179 
180  std::vector<std::vector<CbmMuchModule*>> fModules;
181  std::vector<std::vector<CbmMuchLayerSide*>> fSides;
182  std::map<Int_t, Int_t> fMapSides;
183 
184  TObjArray* fStations;
185  TObjArray* fAbsorbers;
186  TGeoCone* fMuchCave;
187 
188  // Input parameters
189  Double_t fMuchZ1; // MuchCave Zin position [cm]
190  Double_t fAcceptanceTanMin; // Acceptance tangent min
191  Double_t fAcceptanceTanMax; // Acceptance tangent max
192  Int_t fNabs; // Number of absorbers
193  Int_t fNst; // Number of stations
194 
195  // GEM module parameters
196  Double_t fActiveLx; // Active volume lx [cm]
197  Double_t fActiveLy; // Active volume ly [cm]
198  Double_t fActiveLz; // Active volume lz [cm]
199  Double_t fSpacerLx; // Spacer lx [cm]
200  Double_t fSpacerLy; // Spacer ly [cm]
201  Double_t fOverlapY; // Overlap along y axis [cm]
202 
203  // Straw module parameters
204  Double_t fStrawLz;
205 
206  // Sector-type module parameters
207  TArrayI fNSectorsPerLayer; // Number of sectors per layer
208  Double_t fActiveLzSector; // Active volume thickness [cm]
209  Double_t fSpacerR; // Spacer width in R [cm]
210  Double_t fSpacerPhi; // Spacer width in Phi [cm]
211  Double_t fOverlapR; // Overlap in R direction [cm]
212 
213  TArrayD
214  fAbsorberZ1; // Absorber Zin position [cm] in the cave reference frame
215  TArrayD fAbsorberLz; // Absorber thickness [cm]
216  TArrayC fAbsorberMat; // Absorber material
217  TArrayD fStationZ0; // Station Zceneter [cm] in the cave reference frame
218  TArrayI fNlayers; // Number of layers
219  TArrayI fDetType; // Detector type
220  TArrayD fLayersDz; // Distance between layers [cm]
221  TArrayD fSupportLz; // Support thickness [cm]
222  TArrayI fModuleDesign; /* 1 - detailed design (modules at two sides)
223  * 0 - simple design (1 module per layer) */
224 
228  Double_t Rmin;
229  Double_t Rmax;
230  Double_t Dx2;
231 
234 
236 };
237 
238 #endif
CbmMuchGeoScheme::GetZ
Double_t GetZ(const TString &path)
Definition: CbmMuchGeoScheme.cxx:443
CbmMuchGeoScheme::fGeoID
Int_t fGeoID
ModuleCopyID with module type.
Definition: CbmMuchGeoScheme.h:173
CbmMuchGeoScheme::GetAbsorberMat
Char_t GetAbsorberMat(Int_t i) const
Definition: CbmMuchGeoScheme.h:86
CbmMuchGeoScheme
Definition: CbmMuchGeoScheme.h:43
CbmMuchGeoScheme::fActive
Int_t fActive
LayerID within station, 1..4.
Definition: CbmMuchGeoScheme.h:172
CbmMuchGeoScheme::GetModule
CbmMuchModule * GetModule(Int_t iStation, Int_t iLayer, Bool_t iSide, Int_t iModule) const
Definition: CbmMuchGeoScheme.cxx:238
CbmMuchGeoScheme::Rmin
Double_t Rmin
Definition: CbmMuchGeoScheme.h:228
CbmMuchGeoScheme::StationNode
void StationNode(TGeoNode *MuchObjNode, TString MuchObjPath)
Definition: CbmMuchGeoScheme.cxx:491
CbmMuchGeoScheme::muchLy
CbmMuchLayer * muchLy
Definition: CbmMuchGeoScheme.h:226
CbmMuchStation
Definition: CbmMuchStation.h:22
CbmMuchGeoScheme::GetLayerSides
std::vector< CbmMuchLayerSide * > GetLayerSides(Int_t iStation) const
Definition: CbmMuchGeoScheme.cxx:378
CbmMuchGeoScheme::fStations
TObjArray * fStations
Definition: CbmMuchGeoScheme.h:184
CbmMuchGeoScheme::fSpacerPhi
Double_t fSpacerPhi
Definition: CbmMuchGeoScheme.h:210
CbmMuchGeoScheme::GetLayerSideByDetId
CbmMuchLayerSide * GetLayerSideByDetId(Int_t detId) const
Definition: CbmMuchGeoScheme.cxx:268
kMuchStation
@ kMuchStation
Station.
Definition: CbmMuchAddress.h:17
CbmMuchGeoScheme::fInitialized
static Bool_t fInitialized
Definition: CbmMuchGeoScheme.h:176
CbmMuchGeoScheme::GetStations
TObjArray * GetStations() const
Definition: CbmMuchGeoScheme.h:81
CbmMuchGeoScheme::ClassDef
ClassDef(CbmMuchGeoScheme, 1)
CbmMuchGeoScheme::GetLayersDz
Double_t GetLayersDz(Int_t st) const
Definition: CbmMuchGeoScheme.h:124
CbmMuchGeoScheme::fGlobalMatrix
TGeoHMatrix * fGlobalMatrix
Global center of volume.
Definition: CbmMuchGeoScheme.h:167
CbmMuchGeoScheme::fDetType
TArrayI fDetType
Definition: CbmMuchGeoScheme.h:219
CbmMuchGeoScheme::GetSizeY
Double_t GetSizeY(const TString &path)
Definition: CbmMuchGeoScheme.cxx:430
CbmMuchGeoScheme::fMuchCave
TGeoCone * fMuchCave
Definition: CbmMuchGeoScheme.h:186
CbmMuchGeoScheme::fOverlapY
Double_t fOverlapY
Definition: CbmMuchGeoScheme.h:201
CbmMuchGeoScheme::~CbmMuchGeoScheme
~CbmMuchGeoScheme()
Definition: CbmMuchGeoScheme.cxx:105
CbmMuchGeoScheme::fAcceptanceTanMin
Double_t fAcceptanceTanMin
Definition: CbmMuchGeoScheme.h:190
i
int i
Definition: L1/vectors/P4_F32vec4.h:25
CbmMuchGeoScheme::IsInitialized
Bool_t IsInitialized()
Definition: CbmMuchGeoScheme.h:51
CbmMuchGeoScheme::fNlayers
TArrayI fNlayers
Definition: CbmMuchGeoScheme.h:218
kMuchLayerSide
@ kMuchLayerSide
LayerSide.
Definition: CbmMuchAddress.h:19
CbmMuchGeoScheme::GetModulePhi
Double_t GetModulePhi(const TString &path)
Definition: CbmMuchGeoScheme.cxx:804
CbmMuchGeoScheme::fVolumeBoxShape
TGeoBBox * fVolumeBoxShape
Definition: CbmMuchGeoScheme.h:163
CbmMuchGeoScheme::GetSizeX
Double_t GetSizeX(const TString &path)
Definition: CbmMuchGeoScheme.cxx:423
CbmMuchGeoScheme::GetSizeZ
Double_t GetSizeZ(const TString &path)
Definition: CbmMuchGeoScheme.cxx:437
CbmMuchGeoScheme::fGlobal
Double_t fGlobal[3]
Definition: CbmMuchGeoScheme.h:165
CbmMuchGeoScheme::fActiveLx
Double_t fActiveLx
Definition: CbmMuchGeoScheme.h:196
CbmMuchGeoScheme::Init
void Init(TObjArray *stations, Int_t flag)
Definition: CbmMuchGeoScheme.cxx:121
CbmMuchGeoScheme::fLayersDz
TArrayD fLayersDz
Definition: CbmMuchGeoScheme.h:220
CbmMuchGeoScheme::GetAbsorberZ0
Double_t GetAbsorberZ0(Int_t i)
Definition: CbmMuchGeoScheme.h:87
CbmMuchGeoScheme::GetMuchCave
TGeoCone * GetMuchCave() const
Definition: CbmMuchGeoScheme.h:83
CbmMuchGeoScheme::GetGemModules
std::vector< CbmMuchModuleGem * > GetGemModules() const
Definition: CbmMuchGeoScheme.cxx:872
CbmMuchAddress::GetElementId
static Int_t GetElementId(UInt_t address, Int_t level)
Definition: CbmMuchAddress.h:94
CbmMuchGeoScheme::fStation
Int_t fStation
Definition: CbmMuchGeoScheme.h:170
CbmMuchGeoScheme::ExtractGeoParameter
void ExtractGeoParameter(TGeoNode *muchNode, const char *volumeName)
Definition: CbmMuchGeoScheme.cxx:463
CbmMuchGeoScheme::GetModuleH1
Double_t GetModuleH1(const TString &path)
Definition: CbmMuchGeoScheme.cxx:810
CbmMuchGeoScheme::fActiveLzSector
Double_t fActiveLzSector
Definition: CbmMuchGeoScheme.h:208
CbmMuchGeoScheme::Dx2
Double_t Dx2
Definition: CbmMuchGeoScheme.h:230
CbmMuchGeoScheme::GetSpacerLx
Double_t GetSpacerLx() const
Definition: CbmMuchGeoScheme.h:120
CbmMuchGeoScheme::fGlobalTrap
Double_t fGlobalTrap[3]
Definition: CbmMuchGeoScheme.h:166
CbmMuchGeoScheme::operator=
CbmMuchGeoScheme & operator=(const CbmMuchGeoScheme &)
CbmMuchGeoScheme::GetModuleY
Double_t GetModuleY(const TString &path)
Definition: CbmMuchGeoScheme.cxx:791
CbmMuchGeoScheme::GetStationByDetId
CbmMuchStation * GetStationByDetId(Int_t detId) const
Definition: CbmMuchGeoScheme.cxx:249
CbmMuchGeoScheme::GetY
Double_t GetY(const TString &path)
Definition: CbmMuchGeoScheme.cxx:450
CbmMuchGeoScheme::GetModuleX
Double_t GetModuleX(const TString &path)
Definition: CbmMuchGeoScheme.cxx:798
CbmMuchGeoScheme::GetLayerSideIndex
static Int_t GetLayerSideIndex(Int_t address)
Definition: CbmMuchGeoScheme.h:74
CbmMuchGeoScheme::ClearPointArrays
void ClearPointArrays()
Definition: CbmMuchGeoScheme.cxx:337
CbmMuchGeoScheme::GetSpacerR
Double_t GetSpacerR() const
Definition: CbmMuchGeoScheme.h:122
kMuchLayer
@ kMuchLayer
Layer.
Definition: CbmMuchAddress.h:18
CbmMuchGeoScheme::GetNStations
Int_t GetNStations() const
Definition: CbmMuchGeoScheme.h:79
CbmMuchGeoScheme::fNSectorsPerLayer
TArrayI fNSectorsPerLayer
Definition: CbmMuchGeoScheme.h:207
CbmMuchGeoScheme::GetLayerIndex
static Int_t GetLayerIndex(Int_t address)
Definition: CbmMuchGeoScheme.h:71
CbmMuchGeoScheme::fVolumeTrapShape
TGeoTrap * fVolumeTrapShape
Definition: CbmMuchGeoScheme.h:164
CbmMuchGeoScheme::GetStationIndex
static Int_t GetStationIndex(Int_t address)
Definition: CbmMuchGeoScheme.h:68
CbmMuchGeoScheme::GetActiveLy
Double_t GetActiveLy() const
Definition: CbmMuchGeoScheme.h:118
CbmMuchGeoScheme::fMuchZ1
Double_t fMuchZ1
Definition: CbmMuchGeoScheme.h:189
CbmMuchGeoScheme::GetMuchCaveZ0
Double_t GetMuchCaveZ0() const
Definition: CbmMuchGeoScheme.h:84
CbmMuchGeoScheme::CreateHitArrays
void CreateHitArrays()
Definition: CbmMuchGeoScheme.cxx:301
CbmMuchGeoScheme::muchLySd
CbmMuchLayerSide * muchLySd
Definition: CbmMuchGeoScheme.h:227
CbmMuchGeoScheme::Instance
static CbmMuchGeoScheme * Instance()
Definition: CbmMuchGeoScheme.cxx:113
CbmMuchModuleGem
Definition: CbmMuchModuleGem.h:24
CbmMuchGeoScheme::GetNAbsorbers
Int_t GetNAbsorbers() const
Definition: CbmMuchGeoScheme.h:80
CbmMuchGeoScheme::LayerNode
void LayerNode(TGeoNode *StNode, Int_t iStation, TString StPath)
Definition: CbmMuchGeoScheme.cxx:636
CbmMuchGeoScheme::fSides
std::vector< std::vector< CbmMuchLayerSide * > > fSides
Definition: CbmMuchGeoScheme.h:181
CbmMuchGeoScheme::fStrawLz
Double_t fStrawLz
Definition: CbmMuchGeoScheme.h:204
CbmMuchLayerSide
Definition: CbmMuchLayerSide.h:22
CbmMuchGeoScheme::GetActiveLx
Double_t GetActiveLx() const
Definition: CbmMuchGeoScheme.h:117
CbmMuchGeoScheme::Intersect
Int_t Intersect(Float_t x, Float_t y, Float_t dx, Float_t dy, Float_t r)
Definition: CbmMuchGeoScheme.cxx:829
CbmMuchGeoScheme::fOverlapR
Double_t fOverlapR
Definition: CbmMuchGeoScheme.h:211
CbmMuchGeoScheme::fActiveLz
Double_t fActiveLz
Definition: CbmMuchGeoScheme.h:198
CbmMuchGeoScheme::GetAbsorbers
TObjArray * GetAbsorbers() const
Definition: CbmMuchGeoScheme.h:82
CbmMuchGeoScheme::muchSt
CbmMuchStation * muchSt
Definition: CbmMuchGeoScheme.h:225
CbmMuchGeoScheme::fSpacerLx
Double_t fSpacerLx
Definition: CbmMuchGeoScheme.h:199
CbmMuchGeoScheme::fInstance
static CbmMuchGeoScheme * fInstance
Definition: CbmMuchGeoScheme.h:175
CbmMuchModule
Definition: CbmMuchModule.h:24
CbmMuchGeoScheme::ActiveModuleNode
void ActiveModuleNode(TGeoNode *moduleNode, Int_t iStation, Int_t iLayer, Int_t iModule, TString modulePath)
Definition: CbmMuchGeoScheme.cxx:678
CbmMuchGeoScheme::fLayer
Int_t fLayer
StationTypeID, 1..3.
Definition: CbmMuchGeoScheme.h:171
CbmMuchGeoScheme::fMapSides
std::map< Int_t, Int_t > fMapSides
Definition: CbmMuchGeoScheme.h:182
CbmMuchGeoScheme::GetLayerSide
CbmMuchLayerSide * GetLayerSide(Int_t iStation, Int_t iLayer, Bool_t iSide) const
Definition: CbmMuchGeoScheme.cxx:228
CbmMuchGeoScheme::GetLayer
CbmMuchLayer * GetLayer(Int_t iStation, Int_t iLayer) const
Definition: CbmMuchGeoScheme.cxx:220
CbmMuchGeoScheme::fSupportLz
TArrayD fSupportLz
Definition: CbmMuchGeoScheme.h:221
CbmMuchGeoScheme::InitModules
void InitModules()
Definition: CbmMuchGeoScheme.cxx:150
CbmMuchGeoScheme::fAbsorberZ1
TArrayD fAbsorberZ1
Definition: CbmMuchGeoScheme.h:214
CbmMuchGeoScheme::NavigateTo
void NavigateTo(const TString &path)
Definition: CbmMuchGeoScheme.cxx:411
CbmMuchGeoScheme::fModulesInitialized
static Bool_t fModulesInitialized
Definition: CbmMuchGeoScheme.h:178
CbmMuchGeoScheme::fNabs
Int_t fNabs
Definition: CbmMuchGeoScheme.h:192
CbmMuchGeoScheme::fModuleDesign
TArrayI fModuleDesign
Definition: CbmMuchGeoScheme.h:222
CbmMuchGeoScheme::GetModuleDZ
Double_t GetModuleDZ(const TString &path)
Definition: CbmMuchGeoScheme.cxx:777
CbmMuchGeoScheme::fModules
std::vector< std::vector< CbmMuchModule * > > fModules
Definition: CbmMuchGeoScheme.h:180
CbmMuchAddress.h
CbmMuchGeoScheme::fSpacerR
Double_t fSpacerR
Definition: CbmMuchGeoScheme.h:209
CbmMuchGeoScheme::fCurrentVolume
TGeoVolume * fCurrentVolume
Definition: CbmMuchGeoScheme.h:162
CbmMuchGeoScheme::ClearClusterArrays
void ClearClusterArrays()
Definition: CbmMuchGeoScheme.cxx:362
CbmMuchGeoScheme::fStationZ0
TArrayD fStationZ0
Definition: CbmMuchGeoScheme.h:217
CbmMuchGeoScheme::fGeoPathHash
UInt_t fGeoPathHash
Definition: CbmMuchGeoScheme.h:161
x
Double_t x
Definition: CbmMvdSensorDigiToHitTask.cxx:68
CbmMuchGeoScheme::fAbsorberLz
TArrayD fAbsorberLz
Definition: CbmMuchGeoScheme.h:215
CbmMuchGeoScheme::GetActiveLz
Double_t GetActiveLz() const
Definition: CbmMuchGeoScheme.h:119
CbmMuchGeoScheme::CbmMuchGeoScheme
CbmMuchGeoScheme(const CbmMuchGeoScheme &)
CbmMuchGeoScheme::fActiveLy
Double_t fActiveLy
Definition: CbmMuchGeoScheme.h:197
y
Double_t y
Definition: CbmMvdSensorDigiToHitTask.cxx:68
CbmMuchGeoScheme::fSpacerLy
Double_t fSpacerLy
Definition: CbmMuchGeoScheme.h:200
CbmMuchGeoScheme::GetX
Double_t GetX(const TString &path)
Definition: CbmMuchGeoScheme.cxx:457
CbmMuchGeoScheme::fAcceptanceTanMax
Double_t fAcceptanceTanMax
Definition: CbmMuchGeoScheme.h:191
CbmMuchGeoScheme::CbmMuchGeoScheme
CbmMuchGeoScheme()
Definition: CbmMuchGeoScheme.cxx:47
CbmMuchGeoScheme::GetStation
CbmMuchStation * GetStation(Int_t iStation) const
Definition: CbmMuchGeoScheme.cxx:209
CbmMuchGeoScheme::Rmax
Double_t Rmax
Definition: CbmMuchGeoScheme.h:229
CbmMuchGeoScheme::GetModules
std::vector< CbmMuchModule * > GetModules() const
Definition: CbmMuchGeoScheme.cxx:852
CbmMuchGeoScheme::ClearHitArrays
void ClearHitArrays()
Definition: CbmMuchGeoScheme.cxx:350
CbmMuchGeoScheme::GetModuleBl1
Double_t GetModuleBl1(const TString &path)
Definition: CbmMuchGeoScheme.cxx:816
CbmMuchGeoScheme::fAbsorberMat
TArrayC fAbsorberMat
Definition: CbmMuchGeoScheme.h:216
CbmMuchLayer
Definition: CbmMuchLayer.h:21
CbmMuchGeoScheme::fNst
Int_t fNst
Definition: CbmMuchGeoScheme.h:193
CbmMuchGeoScheme::GetSpacerPhi
Double_t GetSpacerPhi() const
Definition: CbmMuchGeoScheme.h:123
CbmMuchGeoScheme::GetModuleZ
Double_t GetModuleZ(const TString &path)
Definition: CbmMuchGeoScheme.cxx:784
CbmMuchGeoScheme::GetLayerByDetId
CbmMuchLayer * GetLayerByDetId(Int_t detId) const
Definition: CbmMuchGeoScheme.cxx:258
CbmMuchGeoScheme::GetModuleByDetId
CbmMuchModule * GetModuleByDetId(Int_t detId) const
Definition: CbmMuchGeoScheme.cxx:278
CbmMuchGeoScheme::fAbsorbers
TObjArray * fAbsorbers
Definition: CbmMuchGeoScheme.h:185
CbmMuchGeoScheme::CreatePointArrays
void CreatePointArrays()
Definition: CbmMuchGeoScheme.cxx:288
CbmMuchGeoScheme::NavigateModule
void NavigateModule(const TString &path)
Definition: CbmMuchGeoScheme.cxx:764
CbmMuchGeoScheme::GetModuleTl1
Double_t GetModuleTl1(const TString &path)
Definition: CbmMuchGeoScheme.cxx:822
CbmMuchGeoScheme::CreateClusterArrays
void CreateClusterArrays()
Definition: CbmMuchGeoScheme.cxx:322
CbmMuchGeoScheme::GetLayerSideNr
Int_t GetLayerSideNr(Int_t detId) const
Definition: CbmMuchGeoScheme.cxx:403
CbmMuchGeoScheme::ModuleNode
void ModuleNode(TGeoNode *layerNode, Int_t iStation, Int_t iLayer, TString layerPath)
Definition: CbmMuchGeoScheme.cxx:658
CbmMuchGeoScheme::GetSpacerLy
Double_t GetSpacerLy() const
Definition: CbmMuchGeoScheme.h:121