BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnHodo.h
Go to the documentation of this file.
1
/******************************************************************************
2
*
3
* Class BmnHodo
4
*
5
* Created by: Sergei Merts
6
* e-mail: merts@jinr.ru
7
* Version: 28-03-2021
8
*
9
* Modified by M.Golubeva April 2021
10
*
11
*****************************************************************************/
12
13
#ifndef BMNHODO_H
14
#define BMNHODO_H
15
16
#include "
BmnHodoGeoPar.h
"
17
#include "
BmnHodoPoint.h
"
18
#include "FairDetector.h"
19
#include "
TClonesArray.h
"
20
#include "
TLorentzVector.h
"
21
#include "
TParticle.h
"
22
#include "
TVector3.h
"
23
#include "TVirtualMC.h"
24
25
class
BmnHodo
:
public
FairDetector
26
{
27
public
:
28
/** Default constructor **/
29
BmnHodo
();
30
31
/** Standard constructor.
32
*@param name detetcor name
33
*@param active sensitivity flag
34
**/
35
BmnHodo
(
const
char
* name,
Bool_t
active);
36
37
/** Destructor **/
38
virtual
~BmnHodo
();
39
40
/** Virtual method Initialize
41
** Initialises detector. Stores volume IDs for MUO detector and mirror.
42
**/
43
virtual
void
Initialize
();
44
45
/** Virtual method ProcessHits
46
**
47
** Defines the action to be taken when a step is inside the
48
** active volume. Creates BmnBdPoints and BmnBdMirrorPoints and adds
49
** them to the collections.
50
*@param vol Pointer to the active volume
51
**/
52
virtual
Bool_t
ProcessHits
(FairVolume* vol = 0);
53
54
/** Virtual method EndOfEvent
55
**
56
** If verbosity level is set, print hit collection at the
57
** end of the event and resets it afterwards.
58
**/
59
virtual
void
EndOfEvent
();
60
61
virtual
void
SetSpecialPhysicsCuts
() { ; }
62
virtual
void
BeginEvent
() { ; }
63
virtual
void
FinishPrimary
() { ; }
64
virtual
void
FinishRun
() { ; }
65
virtual
void
BeginPrimary
() { ; }
66
virtual
void
PostTrack
() { ; }
67
virtual
void
PreTrack
() { ; }
68
69
/** Virtual method Register
70
**
71
** Registers the hit collection in the ROOT manager.
72
**/
73
virtual
void
Register
();
74
75
/** Accessor to the hit collection **/
76
virtual
TClonesArray
*
GetCollection
(
Int_t
iColl)
const
;
77
78
/** Virtual method Print
79
**
80
** Screen output of hit collection.
81
**/
82
virtual
void
Print
(
Option_t
*)
const
;
83
84
/** Virtual method Reset
85
**
86
** Clears the hit collection
87
**/
88
virtual
void
Reset
();
89
90
/** Virtual method Construct geometry
91
**
92
**/
93
virtual
void
ConstructGeometry
();
94
virtual
Bool_t
CheckIfSensitive
(std::string name) {
return
BmnHodoGeoPar::CheckIfSensitive
(name); }
95
96
BmnHodoPoint
*
GetHit
(
Int_t
i
)
const
;
97
BmnHodoPoint
*
GetHit
(
Int_t
sticksens,
Int_t
stick)
const
;
98
Int_t
GetHodoStickSensVolId
() {
return
fHodoStickSensVolId
; }
99
100
BmnHodoPoint
*
AddHit
(
Int_t
trackID,
101
Int_t
detID,
102
Int_t
copyNo,
103
Int_t
copyNoMother,
104
TVector3
pos,
105
TVector3
mom,
106
Double_t
tof,
107
Double_t
length,
108
Double_t
eLoss);
109
110
private
:
111
Int_t
fTrackID
;
//! track index
112
Int_t
fVolumeID
;
//! volume id
113
Int_t
fEventID
;
//! event id
114
Int_t
fHodoStickSensVolId
;
115
TVector3
fPos
;
//! position (in)
116
TVector3
fMom
;
//! momentum (in)
117
Double32_t
fTime
;
//! time
118
Double32_t
fLength
;
//! length
119
Double32_t
fELoss
;
//! energy loss
120
Int_t
volDetector
;
//! MC volume ID of MUO
121
122
TClonesArray
*
fHodoCollection
;
//! Hit collection
123
124
// reset all parameters
125
void
ResetParameters
();
126
BmnHodo
(
const
BmnHodo
&) =
delete
;
127
BmnHodo
operator=
(
const
BmnHodo
&) =
delete
;
128
129
ClassDef
(
BmnHodo
, 0)
130
};
131
132
//-----------------------------------------------------------------------------
133
inline
void
BmnHodo::ResetParameters
()
134
{
135
fTrackID
=
fVolumeID
= 0;
136
fPos
.SetXYZ(0.0, 0.0, 0.0);
137
fMom
.SetXYZ(0.0, 0.0, 0.0);
138
fTime
=
fLength
=
fELoss
= 0;
139
};
140
//-----------------------------------------------------------------------------
141
142
#endif
i
int i
Definition
P4_F32vec4.h:22
Bool_t
bool Bool_t
Int_t
int Int_t
Double32_t
double Double32_t
Double_t
double Double_t
Option_t
const char Option_t
ClassDef
#define ClassDef(name, id)
TClonesArray.h
TLorentzVector.h
TParticle.h
TVector3.h
BmnHodoGeoPar::CheckIfSensitive
static bool CheckIfSensitive(std::string name)
Definition
BmnHodoGeoPar.cxx:54
BmnHodoPoint
Definition
BmnHodoPoint.h:19
BmnHodo::PostTrack
virtual void PostTrack()
Definition
BmnHodo.h:66
BmnHodo::GetCollection
virtual TClonesArray * GetCollection(Int_t iColl) const
Accessor to the hit collection.
Definition
BmnHodo.cxx:292
BmnHodo::fHodoStickSensVolId
Int_t fHodoStickSensVolId
event id
Definition
BmnHodo.h:114
BmnHodo::SetSpecialPhysicsCuts
virtual void SetSpecialPhysicsCuts()
Definition
BmnHodo.h:61
BmnHodo::fMom
TVector3 fMom
position (in)
Definition
BmnHodo.h:116
BmnHodo::Reset
virtual void Reset()
Virtual method Reset.
Definition
BmnHodo.cxx:311
BmnHodo::operator=
BmnHodo operator=(const BmnHodo &)=delete
BmnHodo::BeginPrimary
virtual void BeginPrimary()
Definition
BmnHodo.h:65
BmnHodo::volDetector
Int_t volDetector
energy loss
Definition
BmnHodo.h:120
BmnHodo::Register
virtual void Register()
Virtual method Register.
Definition
BmnHodo.cxx:286
BmnHodo::AddHit
BmnHodoPoint * AddHit(Int_t trackID, Int_t detID, Int_t copyNo, Int_t copyNoMother, TVector3 pos, TVector3 mom, Double_t tof, Double_t length, Double_t eLoss)
Definition
BmnHodo.cxx:328
BmnHodo::Print
virtual void Print(Option_t *) const
Virtual method Print.
Definition
BmnHodo.cxx:300
BmnHodo::CheckIfSensitive
virtual Bool_t CheckIfSensitive(std::string name)
Definition
BmnHodo.h:94
BmnHodo::ConstructGeometry
virtual void ConstructGeometry()
Virtual method Construct geometry.
Definition
BmnHodo.cxx:317
BmnHodo::fTrackID
Int_t fTrackID
Definition
BmnHodo.h:111
BmnHodo::fVolumeID
Int_t fVolumeID
track index
Definition
BmnHodo.h:112
BmnHodo::GetHit
BmnHodoPoint * GetHit(Int_t i) const
Definition
BmnHodo.cxx:72
BmnHodo::fPos
TVector3 fPos
Definition
BmnHodo.h:115
BmnHodo::fHodoCollection
TClonesArray * fHodoCollection
MC volume ID of MUO.
Definition
BmnHodo.h:122
BmnHodo::FinishRun
virtual void FinishRun()
Definition
BmnHodo.h:64
BmnHodo::Initialize
virtual void Initialize()
Virtual method Initialize Initialises detector.
Definition
BmnHodo.cxx:60
BmnHodo::ProcessHits
virtual Bool_t ProcessHits(FairVolume *vol=0)
Virtual method ProcessHits.
Definition
BmnHodo.cxx:98
BmnHodo::ResetParameters
void ResetParameters()
Hit collection.
Definition
BmnHodo.h:133
BmnHodo::PreTrack
virtual void PreTrack()
Definition
BmnHodo.h:67
BmnHodo::fELoss
Double32_t fELoss
length
Definition
BmnHodo.h:119
BmnHodo::fLength
Double32_t fLength
time
Definition
BmnHodo.h:118
BmnHodo::EndOfEvent
virtual void EndOfEvent()
Virtual method EndOfEvent.
Definition
BmnHodo.cxx:278
BmnHodo::BmnHodo
BmnHodo()
Default constructor.
Definition
BmnHodo.cxx:31
BmnHodo::~BmnHodo
virtual ~BmnHodo()
Destructor.
Definition
BmnHodo.cxx:51
BmnHodo::GetHodoStickSensVolId
Int_t GetHodoStickSensVolId()
Definition
BmnHodo.h:98
BmnHodo::fTime
Double32_t fTime
momentum (in)
Definition
BmnHodo.h:117
BmnHodo::BmnHodo
BmnHodo(const BmnHodo &)=delete
BmnHodo::fEventID
Int_t fEventID
volume id
Definition
BmnHodo.h:113
BmnHodo::FinishPrimary
virtual void FinishPrimary()
Definition
BmnHodo.h:63
BmnHodo::BeginEvent
virtual void BeginEvent()
Definition
BmnHodo.h:62
FairDetector
TClonesArray
TVector3
BmnHodoGeoPar.h
BmnHodoPoint.h
detectors
hodo
BmnHodo.h
Generated on
for BmnRoot by
1.17.0