BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnGemDigitQa.h
Go to the documentation of this file.
1
// BmnGemDigitQa: example task for DIGI files - strip signal spectra of the GEM stations
2
class
BmnGemDigitQa
:
public
FairTask
3
{
4
public
:
5
BmnGemDigitQa
(
Bool_t
isExp =
kFALSE
)
6
:
FairTask
(
"BmnGemDigitQa"
)
7
,
fIsExp
(isExp)
8
{}
9
10
InitStatus
Init
()
override
11
{
12
// the GEM digits have different branch names in experimental and simulated files
13
FairRootManager* ioman = FairRootManager::Instance();
14
fDigits
= (
TClonesArray
*)ioman->GetObject(
fIsExp
?
"GEM"
:
"BmnGemStripDigit"
);
15
if
(!
fDigits
) {
16
LOG(error) <<
"BmnGemDigitQa::Init(): GEM digit branch not found, the task is deactivated"
;
17
return
kERROR;
18
}
19
fHistSignal
=
new
TH2D
(
"hGemSignal"
,
"GEM strip signal;station;signal, ADC counts"
, 8, 0, 8, 100, 0, 1000);
20
return
kSUCCESS;
21
}
22
23
void
Exec
(
Option_t
*
/*option*/
)
override
24
{
25
for
(
Int_t
i
= 0;
i
<
fDigits
->GetEntriesFast();
i
++) {
26
BmnStripDigit
* digit = (
BmnStripDigit
*)
fDigits
->UncheckedAt(
i
);
27
fHistSignal
->Fill(digit->
GetStation
(), digit->
GetStripSignal
());
28
}
29
}
30
31
void
Finish
()
override
32
{
33
// write the results to the output file of the macro
34
FairRootManager::Instance()->GetSink()->WriteObject(
fHistSignal
,
"hGemSignal"
);
35
}
36
37
private
:
38
Bool_t
fIsExp
;
39
TClonesArray
*
fDigits
=
nullptr
;
40
TH2D
*
fHistSignal
=
nullptr
;
41
42
ClassDefOverride
(
BmnGemDigitQa
, 1);
43
};
i
int i
Definition
P4_F32vec4.h:22
Bool_t
bool Bool_t
Int_t
int Int_t
kFALSE
constexpr Bool_t kFALSE
Option_t
const char Option_t
ClassDefOverride
#define ClassDefOverride(name, id)
BmnGemDigitQa
Definition
BmnGemDigitQa.h:3
BmnGemDigitQa::Finish
void Finish() override
Definition
BmnGemDigitQa.h:31
BmnGemDigitQa::Exec
void Exec(Option_t *) override
Definition
BmnGemDigitQa.h:23
BmnGemDigitQa::fIsExp
Bool_t fIsExp
Definition
BmnGemDigitQa.h:38
BmnGemDigitQa::fDigits
TClonesArray * fDigits
Definition
BmnGemDigitQa.h:39
BmnGemDigitQa::BmnGemDigitQa
BmnGemDigitQa(Bool_t isExp=kFALSE)
Definition
BmnGemDigitQa.h:5
BmnGemDigitQa::fHistSignal
TH2D * fHistSignal
Definition
BmnGemDigitQa.h:40
BmnGemDigitQa::Init
InitStatus Init() override
Definition
BmnGemDigitQa.h:10
BmnStripDigit
Class BmnStripDigit Base class for strip detector digits.
Definition
BmnStripDigit.h:14
BmnStripDigit::GetStation
Int_t GetStation()
Definition
BmnStripDigit.h:26
BmnStripDigit::GetStripSignal
Double_t GetStripSignal()
Definition
BmnStripDigit.h:30
FairTask
TClonesArray
TH2D
services
format_docs
digi
BmnGemDigitQa.h
Generated on
for BmnRoot by
1.17.0