BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnSiProfStation.h
Go to the documentation of this file.
1
#ifndef BMNSiProfSTATION_H
2
#define BMNSiProfSTATION_H
3
4
#include "
BmnSiProfModule.h
"
5
#include "BmnStripData.h"
6
#include "
TDOMParser.h
"
7
#include "
TList.h
"
8
#include "
TXMLAttr.h
"
9
#include "
TXMLNode.h
"
10
11
class
BmnSiProfStation
12
{
13
14
protected
:
15
/* station parameters */
16
Int_t
StationNumber
;
17
Int_t
NModules
;
18
19
Double_t
XMinStation
;
20
Double_t
XMaxStation
;
21
Double_t
YMinStation
;
22
Double_t
YMaxStation
;
23
Double_t
ZMinStation
;
24
Double_t
ZMaxStation
;
25
26
Double_t
XSize
;
27
Double_t
YSize
;
28
Double_t
ZSize
;
29
30
Double_t
XPosition
;
31
Double_t
YPosition
;
32
Double_t
ZPosition
;
33
34
/*Shifts of modules in each station*/
35
Double_t
*
XShiftOfModules
;
36
Double_t
*
YShiftOfModules
;
37
Double_t
*
ZShiftOfModules
;
38
39
Double_t
*
ThicknessOfModules
;
40
41
BmnSiProfModule
**
Modules
;
// modules in the station [array]
42
43
public
:
44
/* Constructor */
45
BmnSiProfStation
();
46
47
BmnSiProfStation
(
TXMLNode
* stationNode,
48
Int_t
iStation,
49
Double_t
xpos_station,
50
Double_t
ypos_station,
51
Double_t
zpos_station);
52
53
/* Destructor */
54
virtual
~BmnSiProfStation
();
55
56
// Getters
57
Int_t
GetStationNumber
() {
return
StationNumber
; }
58
Int_t
GetNModules
() {
return
NModules
; }
59
Double_t
GetXMinStation
() {
return
XMinStation
; }
60
Double_t
GetXMaxStation
() {
return
XMaxStation
; }
61
Double_t
GetYMinStation
() {
return
YMinStation
; }
62
Double_t
GetYMaxStation
() {
return
YMaxStation
; }
63
Double_t
GetZMinStation
() {
return
ZMinStation
; }
64
Double_t
GetZMaxStation
() {
return
ZMaxStation
; }
65
Double_t
GetXSize
() {
return
XSize
; }
66
Double_t
GetYSize
() {
return
YSize
; }
67
Double_t
GetZSize
() {
return
ZSize
; }
68
Double_t
GetXPosition
() {
return
XPosition
; }
69
Double_t
GetYPosition
() {
return
YPosition
; }
70
Double_t
GetZPosition
() {
return
ZPosition
; }
71
Double_t
GetXShiftOfModule
(
Int_t
module_num);
72
Double_t
GetYShiftOfModule
(
Int_t
module_num);
73
Double_t
GetZShiftOfModule
(
Int_t
module_num);
74
75
Double_t
GetThicknessOfModule
(
Int_t
module_num);
76
77
BmnSiProfModule
*
GetModule
(
Int_t
module_num);
78
79
// Reset all data in modules of the station
80
void
Reset
();
81
82
Int_t
AddPointToStation
(
Double_t
xcoord,
83
Double_t
ycoord,
84
Double_t
zcoord,
85
Double_t
px,
86
Double_t
py,
87
Double_t
pz,
88
Double_t
dEloss,
89
Int_t
refID);
90
91
Int_t
CountNAddedToStationPoints
();
92
93
void
ProcessPointsInStation
();
94
Int_t
CountNProcessedPointInStation
();
95
96
// Pure virtual methods (must be defined in derived classes) ---------------
97
98
// which module in the station does a point belong to?
99
// zcoord - is unused usually, but if modules in the station are (x,y)-overlapped then zcoord is important
100
Int_t
GetPointModuleOwnership
(
Double_t
xcoord,
Double_t
ycoord,
Double_t
zcoord);
101
102
//--------------------------------------------------------------------------
103
104
protected
:
105
void
DefineStationBorders
();
106
107
private
:
108
Bool_t
CreateConfigurationFromXMLNode
(
TXMLNode
* node);
109
Int_t
CountNumberOfModules
(
TXMLNode
* node);
110
Bool_t
ParseModule
(
TXMLNode
* node,
Int_t
iModule);
111
BmnSiProfLayer
ParseLayer
(
TXMLNode
* node,
Int_t
iLayer,
Int_t
iModule);
112
DeadZoneOfStripLayer
ParseDeadZone
(
TXMLNode
* node,
Int_t
iModule);
113
Int_t
CountDeadZonePoints
(
TXMLNode
* node);
114
115
ClassDef
(
BmnSiProfStation
, 1)
116
};
117
118
#endif
Bool_t
bool Bool_t
Int_t
int Int_t
Double_t
double Double_t
ClassDef
#define ClassDef(name, id)
TDOMParser.h
TList.h
TXMLAttr.h
TXMLNode.h
BmnSiProfLayer
Definition
BmnSiProfLayer.h:15
BmnSiProfModule
Definition
BmnSiProfModule.h:14
BmnSiProfStation
Definition
BmnSiProfStation.h:12
BmnSiProfStation::GetYPosition
Double_t GetYPosition()
Definition
BmnSiProfStation.h:69
BmnSiProfStation::GetXMinStation
Double_t GetXMinStation()
Definition
BmnSiProfStation.h:59
BmnSiProfStation::XShiftOfModules
Double_t * XShiftOfModules
Definition
BmnSiProfStation.h:35
BmnSiProfStation::YMinStation
Double_t YMinStation
Definition
BmnSiProfStation.h:21
BmnSiProfStation::BmnSiProfStation
BmnSiProfStation()
Definition
BmnSiProfStation.cxx:3
BmnSiProfStation::NModules
Int_t NModules
Definition
BmnSiProfStation.h:17
BmnSiProfStation::Reset
void Reset()
Definition
BmnSiProfStation.cxx:143
BmnSiProfStation::ParseModule
Bool_t ParseModule(TXMLNode *node, Int_t iModule)
Definition
BmnSiProfStation.cxx:286
BmnSiProfStation::YSize
Double_t YSize
Definition
BmnSiProfStation.h:27
BmnSiProfStation::YShiftOfModules
Double_t * YShiftOfModules
Definition
BmnSiProfStation.h:36
BmnSiProfStation::CountDeadZonePoints
Int_t CountDeadZonePoints(TXMLNode *node)
Definition
BmnSiProfStation.cxx:462
BmnSiProfStation::GetXPosition
Double_t GetXPosition()
Definition
BmnSiProfStation.h:68
BmnSiProfStation::ZSize
Double_t ZSize
Definition
BmnSiProfStation.h:28
BmnSiProfStation::ZMinStation
Double_t ZMinStation
Definition
BmnSiProfStation.h:23
BmnSiProfStation::GetXMaxStation
Double_t GetXMaxStation()
Definition
BmnSiProfStation.h:60
BmnSiProfStation::Modules
BmnSiProfModule ** Modules
Definition
BmnSiProfStation.h:41
BmnSiProfStation::XSize
Double_t XSize
Definition
BmnSiProfStation.h:26
BmnSiProfStation::GetPointModuleOwnership
Int_t GetPointModuleOwnership(Double_t xcoord, Double_t ycoord, Double_t zcoord)
Definition
BmnSiProfStation.cxx:199
BmnSiProfStation::GetModule
BmnSiProfModule * GetModule(Int_t module_num)
Definition
BmnSiProfStation.cxx:134
BmnSiProfStation::ZPosition
Double_t ZPosition
Definition
BmnSiProfStation.h:32
BmnSiProfStation::ProcessPointsInStation
void ProcessPointsInStation()
Definition
BmnSiProfStation.cxx:183
BmnSiProfStation::GetXSize
Double_t GetXSize()
Definition
BmnSiProfStation.h:65
BmnSiProfStation::GetYSize
Double_t GetYSize()
Definition
BmnSiProfStation.h:66
BmnSiProfStation::CreateConfigurationFromXMLNode
Bool_t CreateConfigurationFromXMLNode(TXMLNode *node)
Definition
BmnSiProfStation.cxx:237
BmnSiProfStation::AddPointToStation
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)
Definition
BmnSiProfStation.cxx:150
BmnSiProfStation::GetNModules
Int_t GetNModules()
Definition
BmnSiProfStation.h:58
BmnSiProfStation::CountNProcessedPointInStation
Int_t CountNProcessedPointInStation()
Definition
BmnSiProfStation.cxx:190
BmnSiProfStation::CountNAddedToStationPoints
Int_t CountNAddedToStationPoints()
Definition
BmnSiProfStation.cxx:174
BmnSiProfStation::~BmnSiProfStation
virtual ~BmnSiProfStation()
Definition
BmnSiProfStation.cxx:65
BmnSiProfStation::GetThicknessOfModule
Double_t GetThicknessOfModule(Int_t module_num)
Definition
BmnSiProfStation.cxx:125
BmnSiProfStation::ParseLayer
BmnSiProfLayer ParseLayer(TXMLNode *node, Int_t iLayer, Int_t iModule)
Definition
BmnSiProfStation.cxx:327
BmnSiProfStation::XMinStation
Double_t XMinStation
Definition
BmnSiProfStation.h:19
BmnSiProfStation::GetYMaxStation
Double_t GetYMaxStation()
Definition
BmnSiProfStation.h:62
BmnSiProfStation::ZShiftOfModules
Double_t * ZShiftOfModules
Definition
BmnSiProfStation.h:37
BmnSiProfStation::StationNumber
Int_t StationNumber
Definition
BmnSiProfStation.h:16
BmnSiProfStation::CountNumberOfModules
Int_t CountNumberOfModules(TXMLNode *node)
Definition
BmnSiProfStation.cxx:273
BmnSiProfStation::GetYMinStation
Double_t GetYMinStation()
Definition
BmnSiProfStation.h:61
BmnSiProfStation::GetYShiftOfModule
Double_t GetYShiftOfModule(Int_t module_num)
Definition
BmnSiProfStation.cxx:107
BmnSiProfStation::GetZMaxStation
Double_t GetZMaxStation()
Definition
BmnSiProfStation.h:64
BmnSiProfStation::GetZMinStation
Double_t GetZMinStation()
Definition
BmnSiProfStation.h:63
BmnSiProfStation::XMaxStation
Double_t XMaxStation
Definition
BmnSiProfStation.h:20
BmnSiProfStation::ParseDeadZone
DeadZoneOfStripLayer ParseDeadZone(TXMLNode *node, Int_t iModule)
Definition
BmnSiProfStation.cxx:419
BmnSiProfStation::GetZPosition
Double_t GetZPosition()
Definition
BmnSiProfStation.h:70
BmnSiProfStation::ThicknessOfModules
Double_t * ThicknessOfModules
Definition
BmnSiProfStation.h:39
BmnSiProfStation::ZMaxStation
Double_t ZMaxStation
Definition
BmnSiProfStation.h:24
BmnSiProfStation::DefineStationBorders
void DefineStationBorders()
Definition
BmnSiProfStation.cxx:209
BmnSiProfStation::YPosition
Double_t YPosition
Definition
BmnSiProfStation.h:31
BmnSiProfStation::GetZSize
Double_t GetZSize()
Definition
BmnSiProfStation.h:67
BmnSiProfStation::GetStationNumber
Int_t GetStationNumber()
Definition
BmnSiProfStation.h:57
BmnSiProfStation::YMaxStation
Double_t YMaxStation
Definition
BmnSiProfStation.h:22
BmnSiProfStation::GetZShiftOfModule
Double_t GetZShiftOfModule(Int_t module_num)
Definition
BmnSiProfStation.cxx:116
BmnSiProfStation::XPosition
Double_t XPosition
Definition
BmnSiProfStation.h:30
BmnSiProfStation::GetXShiftOfModule
Double_t GetXShiftOfModule(Int_t module_num)
Definition
BmnSiProfStation.cxx:98
DeadZoneOfStripLayer
Definition
BmnStripData.h:44
TXMLNode
BmnSiProfModule.h
detectors
SiProf
BmnSiProfStation.h
Generated on
for BmnRoot by
1.17.0