50 using namespace asg::msgSelectorCheck;
72 std::unique_ptr< TFile >
ifile( TFile::Open(
fileName,
"READ" ) );
93 ANA_MSG_INFO(
"Number of events in the file: "<< pers.getEntries());
96 Long64_t
entries = pers.getEntries();
98 const Long64_t
e = atoll(
argv[ 2 ] );
109 ANA_CHECK(electronMediumIsEMSelector.setProperty(
"WorkingPoint",
"MediumElectron"));
110 ANA_CHECK(electronMediumIsEMSelector.setProperty(
"OutputLevel", mylevel));
111 ANA_CHECK(electronMediumIsEMSelector.initialize());
114 ANA_CHECK(electronMediumLHSelector.setProperty(
"WorkingPoint",
"MediumLHElectron"));
115 ANA_CHECK(electronMediumLHSelector.setProperty(
"OutputLevel", mylevel));
116 ANA_CHECK(electronMediumLHSelector.initialize());
119 ANA_CHECK(electronMediumDNNSelector.setProperty(
"WorkingPoint",
"MediumDNNElectron"));
120 ANA_CHECK(electronMediumDNNSelector.setProperty(
"OutputLevel", mylevel));
121 ANA_CHECK(electronMediumDNNSelector.initialize());
127 pers.getEntry(
entry );
138 ANA_MSG_INFO(
"Electron LH Medium accept result: " <<
bool(electronMediumLHSelector->accept(
el)));
139 ANA_MSG_INFO(
"Electron DNN Medium accept result: " <<
bool(electronMediumDNNSelector->accept(
el)));
140 ANA_MSG_INFO(
"Electron Cut Medium accept result: " <<
bool(electronMediumIsEMSelector->accept(
el)));
144 std::bitset<32> decision = electronMediumIsEMSelector->accept(
el).getCutResultBitSet();
146 std::bitset<32> isEMdecision = electronMediumIsEMSelector->accept(
el).getCutResultInvertedBitSet() ;
154 ANA_MSG_INFO(
"HadLeakageOnly mask: " << HadLeakageOnlyMask);
157 ANA_MSG_INFO(
"Medium Without Had Leakage mask: " << MediumWithouHadLeakageMask);
160 bool passALLDecisionisem= (isEMdecision&MediumMask)==0;
161 std::bitset<32> passALLDecisionisemBitSet(isEMdecision&MediumMask);
162 ANA_MSG_INFO(
"Electron check all cuts via isem: "<< passALLDecisionisem <<
" ,bitset " << passALLDecisionisemBitSet);
164 bool checkOnlyHadLeakageisem= (isEMdecision&HadLeakageOnlyMask)==0;
165 std::bitset<32> checkOnlyHadLeakageisemBitSet(isEMdecision&HadLeakageOnlyMask);
166 ANA_MSG_INFO(
"Electron check Only Had Leakage via isem:: "<< checkOnlyHadLeakageisem <<
" ,bitset " << checkOnlyHadLeakageisemBitSet);
168 bool ignoreHadLeakageisem= (isEMdecision&MediumWithouHadLeakageMask)==0;
169 std::bitset<32> ignoreHadLeakageisemBitSet(isEMdecision&MediumWithouHadLeakageMask);
170 ANA_MSG_INFO(
"Electron ignore Had Leakage check all else via isem:: "<< ignoreHadLeakageisem <<
" ,bitset " << ignoreHadLeakageisemBitSet);
182 ANA_CHECK(photonTightIsEMSelector.setProperty(
"WorkingPoint",
"MediumPhoton"));
183 ANA_CHECK(photonTightIsEMSelector.setProperty(
"OutputLevel", mylevel));
184 ANA_CHECK(photonTightIsEMSelector.initialize());
189 pers.getEntry(
entry );
194 ANA_CHECK(pers.retrieve(photons,
"Photons"));
199 ANA_MSG_INFO(
"Photon Tight accept result: " <<
bool(photonTightIsEMSelector->accept(ph)));