BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnArmTrigHitProducer.cxx
Go to the documentation of this file.
1
#include "
BmnArmTrigHitProducer.h
"
2
3
#include "
BmnArmTrigPoint.h
"
4
#include "FairRootManager.h"
5
#include "
TSystem.h
"
6
7
static
Float_t
workTime
= 0.0;
8
static
int
entries
= 0;
9
10
BmnArmTrigHitProducer::BmnArmTrigHitProducer
()
11
:
fOnlyPrimary
(
kFALSE
)
12
,
fUseRealEffects
(
kFALSE
)
13
{
14
fInputBranchName
=
"ArmTrigPoint"
;
15
fOutputHitsBranchName
=
"BmnArmTrigHit"
;
16
fOutputHitMatchesBranchName
=
"BmnArmTrigHitMatch"
;
17
18
fVerbose = 1;
19
}
20
21
BmnArmTrigHitProducer::~BmnArmTrigHitProducer
() {}
22
23
InitStatus
BmnArmTrigHitProducer::Init
()
24
{
25
26
FairRootManager* ioman = FairRootManager::Instance();
27
28
fBmnArmTrigPointsArray
= (
TClonesArray
*)ioman->GetObject(
fInputBranchName
);
29
30
fBmnArmTrigHitsArray
=
new
TClonesArray
(
fOutputHitsBranchName
);
31
ioman->Register(
fOutputHitsBranchName
,
"ArmTrig"
,
fBmnArmTrigHitsArray
,
kTRUE
);
32
33
// if (fStripMatching) {
34
// new ((*fBmnSiliconHitMatchesArray)[fBmnArmTrigHitMatchesArray->GetEntriesFast()])
35
// BmnMatch(module->GetStripMatchInZone(zone_id, iStrip));
36
// }
37
38
if
(fVerbose)
39
cout <<
" BmnArmTrigHitProducer::Init() finished\n\n"
;
40
return
kSUCCESS;
41
}
42
43
void
BmnArmTrigHitProducer::Exec
(
Option_t
* opt)
44
{
45
clock_t tStart = clock();
46
fBmnArmTrigHitsArray
->Delete();
47
BmnArmTrigPoint
* ArmTrigPoint;
48
for
(
Int_t
ipoint = 0; ipoint <
fBmnArmTrigPointsArray
->GetEntriesFast(); ipoint++) {
49
ArmTrigPoint = (
BmnArmTrigPoint
*)
fBmnArmTrigPointsArray
->At(ipoint);
50
51
new
((*fBmnArmTrigHitsArray)[
fBmnArmTrigHitsArray
->GetEntriesFast()])
BmnArmTrigHit
(
52
ArmTrigPoint->GetDetectorID(),
TVector3
(ArmTrigPoint->GetX(), ArmTrigPoint->GetY(), ArmTrigPoint->GetZ()),
53
TVector3
(0, 0, 0), -1, ArmTrigPoint->
GetPdgId
());
54
}
55
56
if
(!
fBmnArmTrigPointsArray
) {
57
Error
(
" BmnArmTrigHitProducer::Exec()"
,
" !!! Unknown branch name !!! "
);
58
return
;
59
}
60
61
if
(fVerbose) {
62
cout <<
" BmnArmTrigHitProducer::Exec(), Number of BmnArmTrigPoints = "
63
<<
fBmnArmTrigPointsArray
->GetEntriesFast() <<
"\n"
;
64
}
65
66
if
(fVerbose)
67
cout <<
" BmnArmTrigHitProducer::Exec() finished\n\n"
;
68
entries
++;
69
clock_t tFinish = clock();
70
workTime
+= ((
Float_t
)(tFinish - tStart)) / CLOCKS_PER_SEC;
71
}
72
73
void
BmnArmTrigHitProducer::Finish
()
74
{
75
cout <<
"Work time of the ArmTrig HitProducer: "
<<
workTime
<< endl;
76
}
entries
static int entries
Definition
BmnArmTrigHitProducer.cxx:8
Int_t
int Int_t
Float_t
float Float_t
kFALSE
constexpr Bool_t kFALSE
kTRUE
constexpr Bool_t kTRUE
Option_t
const char Option_t
Error
void Error(const char *location, const char *msgfmt,...)
TSystem.h
BmnArmTrigHitProducer::BmnArmTrigHitProducer
BmnArmTrigHitProducer()
Definition
BmnArmTrigHitProducer.cxx:10
BmnArmTrigHitProducer::Init
virtual InitStatus Init()
Definition
BmnArmTrigHitProducer.cxx:23
BmnArmTrigHitProducer::fInputBranchName
TString fInputBranchName
Definition
BmnArmTrigHitProducer.h:28
BmnArmTrigHitProducer::Exec
virtual void Exec(Option_t *opt)
Definition
BmnArmTrigHitProducer.cxx:43
BmnArmTrigHitProducer::~BmnArmTrigHitProducer
virtual ~BmnArmTrigHitProducer()
Definition
BmnArmTrigHitProducer.cxx:21
BmnArmTrigHitProducer::fOutputHitMatchesBranchName
TString fOutputHitMatchesBranchName
Definition
BmnArmTrigHitProducer.h:30
BmnArmTrigHitProducer::fBmnArmTrigPointsArray
TClonesArray * fBmnArmTrigPointsArray
Input array of ArmTrig Points.
Definition
BmnArmTrigHitProducer.h:33
BmnArmTrigHitProducer::fOnlyPrimary
Bool_t fOnlyPrimary
Definition
BmnArmTrigHitProducer.h:38
BmnArmTrigHitProducer::fOutputHitsBranchName
TString fOutputHitsBranchName
Definition
BmnArmTrigHitProducer.h:29
BmnArmTrigHitProducer::fBmnArmTrigHitsArray
TClonesArray * fBmnArmTrigHitsArray
Output array of ArmTrig Hits.
Definition
BmnArmTrigHitProducer.h:36
BmnArmTrigHitProducer::fUseRealEffects
Bool_t fUseRealEffects
Definition
BmnArmTrigHitProducer.h:39
BmnArmTrigHitProducer::Finish
virtual void Finish()
Definition
BmnArmTrigHitProducer.cxx:73
BmnArmTrigHit
Definition
BmnArmTrigHit.h:8
BmnArmTrigPoint
Definition
BmnArmTrigPoint.h:19
BmnArmTrigPoint::GetPdgId
Double_t GetPdgId()
Definition
BmnArmTrigPoint.h:69
TClonesArray
TVector3
BmnArmTrigHitProducer.h
BmnArmTrigPoint.h
detectors
armTriggers
BmnArmTrigHitProducer.cxx
Generated on
for BmnRoot by
1.17.0