BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnSiProfStationSet.h
Go to the documentation of this file.
1
#ifndef BMNSiProfSTATIONSET_H
2
#define BMNSiProfSTATIONSET_H
3
4
#include "
BmnSiProfStation.h
"
5
#include "BmnStripData.h"
6
#include "
TDOMParser.h
"
7
#include "
TList.h
"
8
#include "
TXMLAttr.h
"
9
#include "
TXMLNode.h
"
10
11
#include <
TVector3.h
>
12
13
class
BmnSiProfStationSet
14
{
15
16
protected
:
17
/* station set parameters*/
18
Int_t
NStations
;
// number of stations in the detector
19
20
Double_t
*
XStationPositions
;
//! x-position of each station [array]
21
Double_t
*
YStationPositions
;
//! y-position of each station [array]
22
Double_t
*
ZStationPositions
;
//! z-position of each station [array]
23
24
BmnSiProfStation
**
Stations
;
//! Stations [array]
25
map<Int_t, TVector3>*
fStatShifts
;
//!
26
27
public
:
28
/* Constructor */
29
BmnSiProfStationSet
();
30
31
BmnSiProfStationSet
(
TString
xml_config_file, map<Int_t, TVector3>* shifts =
nullptr
);
32
static
unique_ptr<BmnSiProfStationSet>
Create
(
Int_t
period,
Int_t
stp = 0);
33
34
/* Destructor */
35
virtual
~BmnSiProfStationSet
();
36
37
/* Getters */
38
Int_t
GetNStations
() {
return
NStations
; };
39
Double_t
GetXStationPosition
(
Int_t
station_num);
40
Double_t
GetYStationPosition
(
Int_t
station_num);
41
Double_t
GetZStationPosition
(
Int_t
station_num);
42
BmnSiProfStation
*
GetStation
(
Int_t
station_num);
43
44
// Reset all data in stations of the station set
45
void
Reset
();
46
47
////If you use this function in any outer code, don't forget to invert the 'xcoord' parameter!
48
Bool_t
AddPointToDetector
(
Double_t
xcoord,
49
Double_t
ycoord,
50
Double_t
zcoord,
51
Double_t
px,
52
Double_t
py,
53
Double_t
pz,
54
Double_t
dEloss,
55
Int_t
refID);
56
57
Int_t
CountNAddedToDetectorPoints
();
58
59
void
ProcessPointsInDetector
();
60
Int_t
CountNProcessedPointsInDetector
();
61
62
// which station in the detector does a point belong to? ----------------
63
64
// This is an OLD version of the function being used in case of parallel stations
65
Int_t
GetPointStationOwnership
(
Double_t
zcoord);
66
67
// If you use this function in any outer code, don't forget to invert the 'xcoord' parameter!
68
Int_t
GetPointStationOwnership
(
Double_t
xcoord,
Double_t
ycoord,
Double_t
zcoord);
69
70
//--------------------------------------------------------------------------
71
72
private
:
73
Bool_t
CreateConfigurationFromXMLFile
(
TString
xml_config_file);
74
Int_t
CountNumberOfStations
(
TXMLNode
* node);
75
Bool_t
ParseStation
(
TXMLNode
* node,
Int_t
iStation);
76
77
ClassDef
(
BmnSiProfStationSet
, 1);
78
};
79
80
#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
TVector3.h
TXMLAttr.h
TXMLNode.h
BmnSiProfStationSet
Definition
BmnSiProfStationSet.h:14
BmnSiProfStationSet::BmnSiProfStationSet
BmnSiProfStationSet()
Definition
BmnSiProfStationSet.cxx:9
BmnSiProfStationSet::Reset
void Reset()
Definition
BmnSiProfStationSet.cxx:99
BmnSiProfStationSet::ProcessPointsInDetector
void ProcessPointsInDetector()
Definition
BmnSiProfStationSet.cxx:136
BmnSiProfStationSet::GetStation
BmnSiProfStation * GetStation(Int_t station_num)
Definition
BmnSiProfStationSet.cxx:90
BmnSiProfStationSet::YStationPositions
Double_t * YStationPositions
x-position of each station [array]
Definition
BmnSiProfStationSet.h:21
BmnSiProfStationSet::NStations
Int_t NStations
Definition
BmnSiProfStationSet.h:18
BmnSiProfStationSet::CreateConfigurationFromXMLFile
Bool_t CreateConfigurationFromXMLFile(TString xml_config_file)
Definition
BmnSiProfStationSet.cxx:181
BmnSiProfStationSet::GetPointStationOwnership
Int_t GetPointStationOwnership(Double_t zcoord)
Definition
BmnSiProfStationSet.cxx:152
BmnSiProfStationSet::GetZStationPosition
Double_t GetZStationPosition(Int_t station_num)
Definition
BmnSiProfStationSet.cxx:81
BmnSiProfStationSet::ParseStation
Bool_t ParseStation(TXMLNode *node, Int_t iStation)
Definition
BmnSiProfStationSet.cxx:244
BmnSiProfStationSet::GetYStationPosition
Double_t GetYStationPosition(Int_t station_num)
Definition
BmnSiProfStationSet.cxx:72
BmnSiProfStationSet::CountNAddedToDetectorPoints
Int_t CountNAddedToDetectorPoints()
Definition
BmnSiProfStationSet.cxx:127
BmnSiProfStationSet::GetXStationPosition
Double_t GetXStationPosition(Int_t station_num)
Definition
BmnSiProfStationSet.cxx:63
BmnSiProfStationSet::fStatShifts
map< Int_t, TVector3 > * fStatShifts
Stations [array].
Definition
BmnSiProfStationSet.h:25
BmnSiProfStationSet::ZStationPositions
Double_t * ZStationPositions
y-position of each station [array]
Definition
BmnSiProfStationSet.h:22
BmnSiProfStationSet::AddPointToDetector
Bool_t AddPointToDetector(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
BmnSiProfStationSet.cxx:106
BmnSiProfStationSet::CountNProcessedPointsInDetector
Int_t CountNProcessedPointsInDetector()
Definition
BmnSiProfStationSet.cxx:143
BmnSiProfStationSet::~BmnSiProfStationSet
virtual ~BmnSiProfStationSet()
Definition
BmnSiProfStationSet.cxx:33
BmnSiProfStationSet::Stations
BmnSiProfStation ** Stations
z-position of each station [array]
Definition
BmnSiProfStationSet.h:24
BmnSiProfStationSet::CountNumberOfStations
Int_t CountNumberOfStations(TXMLNode *node)
Definition
BmnSiProfStationSet.cxx:231
BmnSiProfStationSet::GetNStations
Int_t GetNStations()
Definition
BmnSiProfStationSet.h:38
BmnSiProfStationSet::XStationPositions
Double_t * XStationPositions
Definition
BmnSiProfStationSet.h:20
BmnSiProfStationSet::Create
static unique_ptr< BmnSiProfStationSet > Create(Int_t period, Int_t stp=0)
Definition
BmnSiProfStationSet.cxx:286
BmnSiProfStation
Definition
BmnSiProfStation.h:12
TString
TXMLNode
BmnSiProfStation.h
detectors
SiProf
BmnSiProfStationSet.h
Generated on
for BmnRoot by
1.17.0