BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
CalcEff.C
Go to the documentation of this file.
1
2
void
CalcEff
(uint32_t runId,
TString
digiPath =
"."
)
3
{
4
TString
file_names(
Form
(
"%s/bmn_run%u_ev*_p*_digi.root"
, digiPath.Data(), runId));
5
ROOT::RDataFrame
df{
"bmndata"
, file_names};
6
7
auto
df_num = df.
Filter
(
8
[&](
BmnEventHeader
& eh) {
return
((eh.
GetInputSignalsAR
() &
BIT
(11)) && (eh.
GetInputSignalsAR
() &
BIT
(5))); },
9
{
"BmnEventHeader."
});
10
uint64_t num = *(df_num.Count());
11
auto
df_den =
12
df.
Filter
([&](
BmnEventHeader
& eh) {
return
((eh.
GetInputSignalsAR
() &
BIT
(5))); }, {
"BmnEventHeader."
});
13
uint64_t den = *(df_den.Count());
14
printf(
"Run %u \n\tnFD&CCT1 %7lu\n\t CCT1 %7lu\n"
, runId, num, den);
15
if
(den > 0) {
16
double
eff = num / (double)den;
17
printf(
"\t\tEff %2.2f\n"
, eff);
18
}
19
}
BIT
#define BIT(n)
Form
char * Form(const char *fmt,...)
BmnEventHeader
Definition
BmnEventHeader.h:24
BmnEventHeader::GetInputSignalsAR
UInt_t GetInputSignalsAR()
Get Input signal states, after reduction.
Definition
BmnEventHeader.h:127
ROOT::RDF::RInterface::Filter
RInterface< RDFDetail::RFilter< F, Proxied >, DS_t > Filter(F f, const ColumnNames_t &columns={}, std::string_view name="")
ROOT::RDataFrame
TString
CalcEff
void CalcEff(uint32_t runId, TString digiPath=".")
Definition
CalcEff.C:2
macro
raw
CalcEff.C
Generated on
for BmnRoot by
1.17.0