BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnSiliconStation.h
Go to the documentation of this file.
1#ifndef BMNSILICONSTATION_H
2#define BMNSILICONSTATION_H
3
4#include "BmnSiliconModule.h"
5#include "BmnStripData.h"
6#include "TDOMParser.h"
7#include "TList.h"
8#include "TXMLAttr.h"
9#include "TXMLNode.h"
10
11#include <iostream>
12
14{
15 protected:
16 /* station parameters */
19
26
30
34
35 /*Shifts of modules in each station*/
36 Double_t* XShiftOfModules; //[NModules]
37 Double_t* YShiftOfModules; //[NModules]
38 Double_t* ZShiftOfModules; //[NModules]
39
40 BmnSiliconModule** Modules; //[NModules] modules in the station [array]
41
42 public:
43 /* Constructor */
46 Int_t iStation,
47 Double_t xpos_station,
48 Double_t ypos_station,
49 Double_t zpos_station);
50 /* Destructor */
52
53 // Getters
62 Double_t GetXSize() { return XSize; }
63 Double_t GetYSize() { return YSize; }
64 Double_t GetZSize() { return ZSize; }
72
73 // Reset all data in modules of the station
74 void Reset();
75
77 Double_t ycoord,
78 Double_t zcoord,
79 Double_t px,
80 Double_t py,
81 Double_t pz,
82 Double_t dEloss,
83 Int_t refID);
84
86
89
90 // which module in the station does a point belong to?
91 // zcoord - is unused usually, but if modules in the station are (x,y)-overlapped then zcoord is important
93
94 //--------------------------------------------------------------------------
95
96 protected:
98
99 private:
106
108};
109
110#endif /* BMNSILICONSTATION_H */
bool Bool_t
int Int_t
double Double_t
#define ClassDef(name, id)
Int_t GetPointModuleOwnership(Double_t xcoord, Double_t ycoord, Double_t zcoord)
Double_t GetZShiftOfModule(Int_t module_num)
void ProcessPointsInStation()
BmnSiliconLayer ParseLayer(TXMLNode *node, Int_t iLayer, Int_t iModule)
Double_t GetXShiftOfModule(Int_t module_num)
Bool_t ParseModule(TXMLNode *node, Int_t iModule)
Int_t CountNumberOfModules(TXMLNode *node)
virtual ~BmnSiliconStation()
Int_t CountDeadZonePoints(TXMLNode *node)
Double_t GetYShiftOfModule(Int_t module_num)
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)
Int_t CountNAddedToStationPoints()
DeadZoneOfStripLayer ParseDeadZone(TXMLNode *node, Int_t iModule)
Bool_t CreateConfigurationFromXMLNode(TXMLNode *node)
BmnSiliconModule ** Modules
void DefineStationBorders()
Int_t CountNProcessedPointInStation()
BmnSiliconModule * GetModule(Int_t module_num)
BmnSiliconStation(TXMLNode *stationNode, Int_t iStation, Double_t xpos_station, Double_t ypos_station, Double_t zpos_station)