BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnGemStripStation.h
Go to the documentation of this file.
1#ifndef BMNGEMSTRIPSTATION_H
2#define BMNGEMSTRIPSTATION_H
3
4#include "BmnGemStripModule.h"
5#include "BmnStripData.h"
6#include "TDOMParser.h"
7#include "TList.h"
8#include "TXMLAttr.h"
9#include "TXMLNode.h"
10
12{
13
14 protected:
15 /* station parameters */
18
25
29
33
34 /*Shifts of modules in each station*/
38
43
45
46 BmnGemStripModule** Modules; //[NModules] modules in the station [array]
47
48 public:
49 /* Constructor */
51 BmnGemStripStation(TXMLNode* stationNode,
52 Int_t iStation,
53 Double_t xpos_station,
54 Double_t ypos_station,
55 Double_t zpos_station,
56 Double_t beamradius);
57 /* Destructor */
58 virtual ~BmnGemStripStation();
59
60 // Getters
69 Double_t GetXSize() { return XSize; }
70 Double_t GetYSize() { return YSize; }
71 Double_t GetZSize() { return ZSize; }
78
83
86
87 // Reset all data in modules of the station
88 void Reset();
89
91 Double_t ycoord,
92 Double_t zcoord,
93 Double_t px,
94 Double_t py,
95 Double_t pz,
96 Double_t dEloss,
97 Int_t refID);
98
100
103
104 // Pure virtual methods (must be defined in derived classes) ---------------
105
106 // which module in the station does a point belong to?
107 // zcoord - is unused usually, but if modules in the station are (x,y)-overlapped then zcoord is important
109
110 //--------------------------------------------------------------------------
111
112 protected:
114
115 private:
118 Bool_t ParseModule(TXMLNode* node, Int_t iModule);
119 BmnGemStripLayer ParseLayer(TXMLNode* node, Int_t iLayer, Int_t iModule);
122
124};
125
126#endif
bool Bool_t
int Int_t
double Double_t
#define ClassDef(name, id)
Int_t CountNumberOfModules(TXMLNode *node)
Double_t * STransfGapThicknessOfModules
BmnGemStripModule ** Modules
Double_t * FTransfGapThicknessOfModules
Double_t GetDriftGapThicknessOfModule(Int_t module_num)
Double_t GetXShiftOfModule(Int_t module_num)
Double_t GetZShiftOfModule(Int_t module_num)
Bool_t ParseModule(TXMLNode *node, Int_t iModule)
BmnGemStripModule * GetModule(Int_t module_num)
Double_t GetInductionGapThicknessOfModule(Int_t module_num)
Double_t GetSTransfGapThicknessOfModule(Int_t module_num)
DeadZoneOfStripLayer ParseDeadZone(TXMLNode *node, Int_t iModule)
Double_t * DriftGapThicknessOfModules
Int_t CountDeadZonePoints(TXMLNode *node)
Double_t * InductionGapThicknessOfModules
Int_t AddPointToStation(Double_t xcoord, Double_t ycoord, Double_t zcoord, Double_t px, Double_t py, Double_t pz, Double_t dEloss, Int_t refID)
Bool_t CreateConfigurationFromXMLNode(TXMLNode *node)
Int_t GetPointModuleOwnership(Double_t xcoord, Double_t ycoord, Double_t zcoord)
Double_t GetFTransfGapThicknessOfModule(Int_t module_num)
Double_t GetYShiftOfModule(Int_t module_num)
BmnGemStripLayer ParseLayer(TXMLNode *node, Int_t iLayer, Int_t iModule)