BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnVSPStation.h
Go to the documentation of this file.
1#ifndef BMNVSPSTATION_H
2#define BMNVSPSTATION_H
3
4#include "BmnStripData.h"
5#include "BmnVSPModule.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*/
39
40 BmnVSPModule** Modules; //[NModules] modules in the station [array]
41
42 public:
43 /* Constructor */
45 BmnVSPStation(TXMLNode* stationNode,
46 Int_t iStation,
47 Double_t xpos_station,
48 Double_t ypos_station,
49 Double_t zpos_station);
50 /* Destructor */
51 virtual ~BmnVSPStation();
52
53 // Getters
62 Double_t GetXSize() { return XSize; }
63 Double_t GetYSize() { return YSize; }
64 Double_t GetZSize() { return ZSize; }
71 BmnVSPModule* GetModule(Int_t module_num);
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:
102 Bool_t ParseModule(TXMLNode* node, Int_t iModule);
103 BmnVSPLayer ParseLayer(TXMLNode* node, Int_t iLayer, Int_t iModule);
106
108};
109
110#endif /* BMNVSPSTATION_H */
bool Bool_t
int Int_t
double Double_t
#define ClassDef(name, id)
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)
Double_t GetYMaxStation()
BmnVSPLayer ParseLayer(TXMLNode *node, Int_t iLayer, Int_t iModule)
Double_t GetZMaxStation()
void DefineStationBorders()
Double_t XPosition
Int_t GetNModules()
Double_t GetXMaxStation()
DeadZoneOfStripLayer ParseDeadZone(TXMLNode *node, Int_t iModule)
Double_t GetYPosition()
Double_t GetXShiftOfModule(Int_t module_num)
Double_t * ZShiftOfModules
BmnVSPModule ** Modules
Double_t * YShiftOfModules
Double_t ZMinStation
Int_t CountDeadZonePoints(TXMLNode *node)
Double_t GetXMinStation()
Double_t GetZShiftOfModule(Int_t module_num)
Double_t XMinStation
Int_t CountNAddedToStationPoints()
Double_t YMinStation
virtual ~BmnVSPStation()
BmnVSPModule * GetModule(Int_t module_num)
Double_t ZPosition
Double_t YPosition
Double_t GetZPosition()
Int_t CountNProcessedPointInStation()
Int_t CountNumberOfModules(TXMLNode *node)
Double_t GetXPosition()
Double_t GetYShiftOfModule(Int_t module_num)
Double_t GetZSize()
Double_t GetYSize()
Double_t GetXSize()
Int_t GetPointModuleOwnership(Double_t xcoord, Double_t ycoord, Double_t zcoord)
Double_t ZMaxStation
Int_t GetStationNumber()
Double_t GetZMinStation()
Bool_t ParseModule(TXMLNode *node, Int_t iModule)
Double_t XMaxStation
Double_t * XShiftOfModules
Double_t YMaxStation
void ProcessPointsInStation()
Double_t GetYMinStation()