BmnRoot
26.10.0-23-g896ab5ca
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnBd.h
Go to the documentation of this file.
1
#ifndef BMNBD_H
2
#define BMNBD_H
3
4
#include "
BmnBdPoint.h
"
5
#include "FairDetector.h"
6
7
class
BmnBd
:
public
FairDetector
8
{
9
public
:
10
/** Default constructor **/
11
BmnBd
();
12
13
/** Standard constructor.
14
*@param name detetcor name
15
*@param active sensitivity flag
16
**/
17
BmnBd
(
const
char
* name,
Bool_t
active);
18
19
/** Destructor **/
20
virtual
~BmnBd
();
21
22
/** Virtual method Initialize
23
** Initialises detector. Stores volume IDs for MUO detector and mirror.
24
**/
25
virtual
void
Initialize
();
26
27
/** Virtual method ProcessHits
28
**
29
** Defines the action to be taken when a step is inside the
30
** active volume. Creates BmnBdPoints and BmnBdMirrorPoints and adds
31
** them to the collections.
32
*@param vol Pointer to the active volume
33
**/
34
virtual
Bool_t
ProcessHits
(FairVolume* vol = 0);
35
36
/** Virtual method EndOfEvent
37
**
38
** If verbosity level is set, print hit collection at the
39
** end of the event and resets it afterwards.
40
**/
41
virtual
void
EndOfEvent
();
42
43
virtual
void
BeginEvent
();
44
45
/** Virtual method Register
46
**
47
** Registers the hit collection in the ROOT manager.
48
**/
49
virtual
void
Register
();
50
51
/** Accessor to the hit collection **/
52
virtual
TClonesArray
*
GetCollection
(
Int_t
iColl)
const
;
53
54
/** Virtual method Print
55
**
56
** Screen output of hit collection.
57
**/
58
virtual
void
Print
(
Option_t
*)
const
;
59
60
/** Virtual method Reset
61
**
62
** Clears the hit collection
63
**/
64
virtual
void
Reset
();
65
66
/** Virtual method CopyClones
67
**
68
** Copies the hit collection with a given track index offset
69
*@param cl1 Origin
70
*@param cl2 Target
71
*@param offset Index offset
72
**/
73
virtual
void
CopyClones
(
TClonesArray
* cl1,
TClonesArray
* cl2,
Int_t
offset);
74
75
/** Virtual method Construct geometry **/
76
virtual
void
ConstructGeometry
();
77
virtual
void
ConstructAsciiGeometry
();
78
virtual
Bool_t
CheckIfSensitive
(std::string name);
79
80
BmnBdPoint
*
AddHit
(
Int_t
trackID,
81
Int_t
detID,
82
Int_t
copyNo,
83
TVector3
posIn,
84
TVector3
posOut,
85
TVector3
momIn,
86
TVector3
momOut,
87
Double_t
tof,
88
Double_t
length,
89
Double_t
eLoss,
90
Bool_t
isPrimary,
91
Double_t
charge,
92
Int_t
pdgId,
93
Double_t
lightYield,
94
Double_t
timeIn,
95
Double_t
timeOut,
96
Double_t
lengthtrack);
97
98
private
:
99
Int_t
fTrackID
;
//! track index
100
Int_t
fVolumeID
;
//! volume id
101
// Int_t fEventID; //! event id
102
TVector3
fPosIn
;
//! position (in)
103
TVector3
fPosOut
;
//! position (out)
104
TVector3
fMomIn
;
//! momentum (in)
105
TVector3
fMomOut
;
106
Double32_t
fTime
;
//! time
107
Double32_t
fLength
;
//! length
108
Double32_t
fELoss
;
//! energy loss
109
Int_t
fPosIndex
;
//!
110
Int_t
volDetector
;
//! MC volume ID of MUO
111
Int_t
fIsPrimary
;
//! is track primary?
112
Double_t
fCharge
;
//! track charge
113
Int_t
fPdgId
;
//! pdg id of particle
114
Float_t
fLightYield
;
115
TClonesArray
*
fBdCollection
;
//! Hit collection
116
Double32_t
fTimeIn
;
//! time
117
Double32_t
fTimeOut
;
//! time
118
Double32_t
fLengthtrack
;
//! length
119
120
// reset all parameters
121
void
ResetParameters
();
122
BmnBd
(
const
BmnBd
&) =
delete
;
123
BmnBd
operator=
(
const
BmnBd
&) =
delete
;
124
125
ClassDef
(
BmnBd
, 2)
126
};
127
128
//------------------------------------------------------------------------------------------------------------------------
129
inline
void
BmnBd::ResetParameters
()
130
{
131
fTrackID
=
fVolumeID
= 0;
132
fPosIn
.SetXYZ(0.0, 0.0, 0.0);
133
fPosOut
.SetXYZ(0.0, 0.0, 0.0);
134
fMomIn
.SetXYZ(0.0, 0.0, 0.0);
135
fMomOut
.SetXYZ(0.0, 0.0, 0.0);
136
fTime
=
fLength
=
fELoss
= 0;
137
fTimeIn
=
fTimeOut
= 0;
138
fLengthtrack
= 0;
139
fPosIndex
= 0;
140
fLightYield
= 0;
141
};
142
//------------------------------------------------------------------------------------------------------------------------
143
144
#endif
BmnBdPoint.h
Bool_t
bool Bool_t
Int_t
int Int_t
Double32_t
double Double32_t
Float_t
float Float_t
Double_t
double Double_t
Option_t
const char Option_t
ClassDef
#define ClassDef(name, id)
BmnBdPoint
Definition
BmnBdPoint.h:17
BmnBd::fELoss
Double32_t fELoss
length
Definition
BmnBd.h:108
BmnBd::ResetParameters
void ResetParameters()
length
Definition
BmnBd.h:129
BmnBd::fPdgId
Int_t fPdgId
track charge
Definition
BmnBd.h:113
BmnBd::BeginEvent
virtual void BeginEvent()
Definition
BmnBd.cxx:64
BmnBd::fMomOut
TVector3 fMomOut
momentum (in)
Definition
BmnBd.h:105
BmnBd::CopyClones
virtual void CopyClones(TClonesArray *cl1, TClonesArray *cl2, Int_t offset)
Virtual method CopyClones.
Definition
BmnBd.cxx:283
BmnBd::fTimeIn
Double32_t fTimeIn
Hit collection.
Definition
BmnBd.h:116
BmnBd::fIsPrimary
Int_t fIsPrimary
MC volume ID of MUO.
Definition
BmnBd.h:111
BmnBd::AddHit
BmnBdPoint * AddHit(Int_t trackID, Int_t detID, Int_t copyNo, TVector3 posIn, TVector3 posOut, TVector3 momIn, TVector3 momOut, Double_t tof, Double_t length, Double_t eLoss, Bool_t isPrimary, Double_t charge, Int_t pdgId, Double_t lightYield, Double_t timeIn, Double_t timeOut, Double_t lengthtrack)
Definition
BmnBd.cxx:362
BmnBd::volDetector
Int_t volDetector
Definition
BmnBd.h:110
BmnBd::fLengthtrack
Double32_t fLengthtrack
time
Definition
BmnBd.h:118
BmnBd::fPosIn
TVector3 fPosIn
volume id
Definition
BmnBd.h:102
BmnBd::GetCollection
virtual TClonesArray * GetCollection(Int_t iColl) const
Accessor to the hit collection.
Definition
BmnBd.cxx:255
BmnBd::Print
virtual void Print(Option_t *) const
Virtual method Print.
Definition
BmnBd.cxx:264
BmnBd::fTime
Double32_t fTime
Definition
BmnBd.h:106
BmnBd::Initialize
virtual void Initialize()
Virtual method Initialize Initialises detector.
Definition
BmnBd.cxx:56
BmnBd::operator=
BmnBd operator=(const BmnBd &)=delete
BmnBd::BmnBd
BmnBd()
Default constructor.
Definition
BmnBd.cxx:22
BmnBd::Register
virtual void Register()
Virtual method Register.
Definition
BmnBd.cxx:249
BmnBd::fPosOut
TVector3 fPosOut
position (in)
Definition
BmnBd.h:103
BmnBd::fTrackID
Int_t fTrackID
Definition
BmnBd.h:99
BmnBd::fTimeOut
Double32_t fTimeOut
time
Definition
BmnBd.h:117
BmnBd::ConstructAsciiGeometry
virtual void ConstructAsciiGeometry()
Definition
BmnBd.cxx:312
BmnBd::fCharge
Double_t fCharge
is track primary?
Definition
BmnBd.h:112
BmnBd::fLightYield
Float_t fLightYield
pdg id of particle
Definition
BmnBd.h:114
BmnBd::Reset
virtual void Reset()
Virtual method Reset.
Definition
BmnBd.cxx:275
BmnBd::CheckIfSensitive
virtual Bool_t CheckIfSensitive(std::string name)
Definition
BmnBd.cxx:352
BmnBd::EndOfEvent
virtual void EndOfEvent()
Virtual method EndOfEvent.
Definition
BmnBd.cxx:241
BmnBd::ProcessHits
virtual Bool_t ProcessHits(FairVolume *vol=0)
Virtual method ProcessHits.
Definition
BmnBd.cxx:67
BmnBd::fPosIndex
Int_t fPosIndex
energy loss
Definition
BmnBd.h:109
BmnBd::fLength
Double32_t fLength
time
Definition
BmnBd.h:107
BmnBd::~BmnBd
virtual ~BmnBd()
Destructor.
Definition
BmnBd.cxx:47
BmnBd::BmnBd
BmnBd(const BmnBd &)=delete
BmnBd::fBdCollection
TClonesArray * fBdCollection
Definition
BmnBd.h:115
BmnBd::ConstructGeometry
virtual void ConstructGeometry()
Virtual method Construct geometry.
Definition
BmnBd.cxx:299
BmnBd::fVolumeID
Int_t fVolumeID
track index
Definition
BmnBd.h:100
BmnBd::fMomIn
TVector3 fMomIn
position (out)
Definition
BmnBd.h:104
FairDetector
TClonesArray
TVector3
detectors
bd
BmnBd.h
Generated on
for BmnRoot by
1.17.0