BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnSiBTStation.h
Go to the documentation of this file.
1
#ifndef BMNSiBTSTATION_H
2
#define BMNSiBTSTATION_H
3
4
#include "
BmnSiBTModule.h
"
5
#include "
BmnStripData.h
"
6
#include "
TDOMParser.h
"
7
#include "
TList.h
"
8
#include "
TXMLAttr.h
"
9
#include "
TXMLNode.h
"
10
11
class
BmnSiBTStation
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
BmnSiBTModule**
Modules
;
// modules in the station [array]
42
43
public
:
44
/* Constructor */
45
BmnSiBTStation
();
46
47
BmnSiBTStation
(
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
~BmnSiBTStation
();
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
BmnSiBTModule
*
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
BmnSiBTLayer
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
(
BmnSiBTStation
, 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
BmnSiBTLayer
Definition
BmnSiBTLayer.h:15
BmnSiBTModule
Definition
BmnSiBTModule.h:14
BmnSiBTStation
Definition
BmnSiBTStation.h:12
BmnSiBTStation::YSize
Double_t YSize
Definition
BmnSiBTStation.h:27
BmnSiBTStation::GetZSize
Double_t GetZSize()
Definition
BmnSiBTStation.h:67
BmnSiBTStation::GetThicknessOfModule
Double_t GetThicknessOfModule(Int_t module_num)
BmnSiBTStation::ProcessPointsInStation
void ProcessPointsInStation()
BmnSiBTStation::ZMinStation
Double_t ZMinStation
Definition
BmnSiBTStation.h:23
BmnSiBTStation::CountNAddedToStationPoints
Int_t CountNAddedToStationPoints()
BmnSiBTStation::GetZShiftOfModule
Double_t GetZShiftOfModule(Int_t module_num)
BmnSiBTStation::GetModule
BmnSiBTModule * GetModule(Int_t module_num)
BmnSiBTStation::CreateConfigurationFromXMLNode
Bool_t CreateConfigurationFromXMLNode(TXMLNode *node)
BmnSiBTStation::ParseDeadZone
DeadZoneOfStripLayer ParseDeadZone(TXMLNode *node, Int_t iModule)
BmnSiBTStation::NModules
Int_t NModules
Definition
BmnSiBTStation.h:17
BmnSiBTStation::StationNumber
Int_t StationNumber
Definition
BmnSiBTStation.h:16
BmnSiBTStation::ThicknessOfModules
Double_t * ThicknessOfModules
Definition
BmnSiBTStation.h:39
BmnSiBTStation::DefineStationBorders
void DefineStationBorders()
BmnSiBTStation::BmnSiBTStation
BmnSiBTStation()
BmnSiBTStation::ParseLayer
BmnSiBTLayer ParseLayer(TXMLNode *node, Int_t iLayer, Int_t iModule)
BmnSiBTStation::XMaxStation
Double_t XMaxStation
Definition
BmnSiBTStation.h:20
BmnSiBTStation::CountNumberOfModules
Int_t CountNumberOfModules(TXMLNode *node)
BmnSiBTStation::GetYShiftOfModule
Double_t GetYShiftOfModule(Int_t module_num)
BmnSiBTStation::YMaxStation
Double_t YMaxStation
Definition
BmnSiBTStation.h:22
BmnSiBTStation::CountDeadZonePoints
Int_t CountDeadZonePoints(TXMLNode *node)
BmnSiBTStation::GetStationNumber
Int_t GetStationNumber()
Definition
BmnSiBTStation.h:57
BmnSiBTStation::CountNProcessedPointInStation
Int_t CountNProcessedPointInStation()
BmnSiBTStation::BmnSiBTStation
BmnSiBTStation(TXMLNode *stationNode, Int_t iStation, Double_t xpos_station, Double_t ypos_station, Double_t zpos_station)
BmnSiBTStation::ZShiftOfModules
Double_t * ZShiftOfModules
Definition
BmnSiBTStation.h:37
BmnSiBTStation::GetXShiftOfModule
Double_t GetXShiftOfModule(Int_t module_num)
BmnSiBTStation::YMinStation
Double_t YMinStation
Definition
BmnSiBTStation.h:21
BmnSiBTStation::ParseModule
Bool_t ParseModule(TXMLNode *node, Int_t iModule)
BmnSiBTStation::XSize
Double_t XSize
Definition
BmnSiBTStation.h:26
BmnSiBTStation::GetZPosition
Double_t GetZPosition()
Definition
BmnSiBTStation.h:70
BmnSiBTStation::GetZMaxStation
Double_t GetZMaxStation()
Definition
BmnSiBTStation.h:64
BmnSiBTStation::GetZMinStation
Double_t GetZMinStation()
Definition
BmnSiBTStation.h:63
BmnSiBTStation::YPosition
Double_t YPosition
Definition
BmnSiBTStation.h:31
BmnSiBTStation::GetYPosition
Double_t GetYPosition()
Definition
BmnSiBTStation.h:69
BmnSiBTStation::XPosition
Double_t XPosition
Definition
BmnSiBTStation.h:30
BmnSiBTStation::ZSize
Double_t ZSize
Definition
BmnSiBTStation.h:28
BmnSiBTStation::GetXSize
Double_t GetXSize()
Definition
BmnSiBTStation.h:65
BmnSiBTStation::Reset
void Reset()
BmnSiBTStation::GetYMaxStation
Double_t GetYMaxStation()
Definition
BmnSiBTStation.h:62
BmnSiBTStation::GetXPosition
Double_t GetXPosition()
Definition
BmnSiBTStation.h:68
BmnSiBTStation::Modules
BmnSiBTModule ** Modules
Definition
BmnSiBTStation.h:41
BmnSiBTStation::ZMaxStation
Double_t ZMaxStation
Definition
BmnSiBTStation.h:24
BmnSiBTStation::ZPosition
Double_t ZPosition
Definition
BmnSiBTStation.h:32
BmnSiBTStation::YShiftOfModules
Double_t * YShiftOfModules
Definition
BmnSiBTStation.h:36
BmnSiBTStation::GetXMaxStation
Double_t GetXMaxStation()
Definition
BmnSiBTStation.h:60
BmnSiBTStation::GetYSize
Double_t GetYSize()
Definition
BmnSiBTStation.h:66
BmnSiBTStation::XMinStation
Double_t XMinStation
Definition
BmnSiBTStation.h:19
BmnSiBTStation::GetXMinStation
Double_t GetXMinStation()
Definition
BmnSiBTStation.h:59
BmnSiBTStation::XShiftOfModules
Double_t * XShiftOfModules
Definition
BmnSiBTStation.h:35
BmnSiBTStation::GetNModules
Int_t GetNModules()
Definition
BmnSiBTStation.h:58
BmnSiBTStation::~BmnSiBTStation
virtual ~BmnSiBTStation()
BmnSiBTStation::GetPointModuleOwnership
Int_t GetPointModuleOwnership(Double_t xcoord, Double_t ycoord, Double_t zcoord)
BmnSiBTStation::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)
BmnSiBTStation::GetYMinStation
Double_t GetYMinStation()
Definition
BmnSiBTStation.h:61
DeadZoneOfStripLayer
Definition
BmnStripData.h:44
TXMLNode
BmnSiBTModule.h
BmnStripData.h
install
include
BmnSiBTStation.h
Generated on
for BmnRoot by
1.17.0