ATLAS Offline Software
TruthCategoriesDecorator.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 #include <GaudiKernel/SystemOfUnits.h>
8 #include <CxxUtils/StringUtils.h>
10 #include <StoreGate/ReadHandle.h>
12 #include <TEnv.h>
13 #include <TLorentzVector.h>
14 #include <TString.h>
16 #include <xAODJet/JetContainer.h>
18 #include <xAODTruth/TruthVertex.h>
19 
20 namespace DerivationFramework {
21 
23 
25  ATH_MSG_DEBUG("Initialize ");
26 
27  // FOR xAOD->HEPMC :: xAODtoHepMC tool
28  ATH_CHECK(m_xAODtoHepMCTool.retrieve());
29  ATH_CHECK(m_higgsTruthCatTool.retrieve());
30 
31  ATH_CHECK(m_truthEvtKey.initialize());
33 
53 
55  // The Higgs and the associated V (last instances prior to decay)
58  // Jets built excluding Higgs decay products
61  // Everybody might not want this ... but good for validation
64 
65  // Open the TEnv configuration file
66  TEnv config{};
67  if (config.ReadFile(PathResolverFindCalibFile(m_configPath).c_str(), EEnvLevel(0))) {
68  ATH_MSG_FATAL("Failed to open TEnv file " << m_configPath);
69  return StatusCode::FAILURE;
70  }
71 
72  for (const std::string prod_mode : {"GGF", "VBF", "WH", "QQ2ZH", "GG2ZH", "TTH", "BBH", "TH", "THQB", "WHT"}) {
73  HTXSSample smp{};
74  if (prod_mode == "GGF")
76  else if (prod_mode == "VBF")
77  smp.prod = HTXS::HiggsProdMode::VBF;
78  else if (prod_mode == "WH")
79  smp.prod = HTXS::HiggsProdMode::WH;
80  else if (prod_mode == "QQ2ZH")
81  smp.prod = HTXS::HiggsProdMode::QQ2ZH;
82  else if (prod_mode == "GG2ZH")
83  smp.prod = HTXS::HiggsProdMode::GG2ZH;
84  else if (prod_mode == "TTH")
85  smp.prod = HTXS::HiggsProdMode::TTH;
86  else if (prod_mode == "BBH")
87  smp.prod = HTXS::HiggsProdMode::BBH;
88  else if (prod_mode == "TH")
89  smp.prod = HTXS::HiggsProdMode::TH;
90  else if (prod_mode == "THQB") {
91  smp.th_type = HTXS::tH_type::THQB;
92  smp.prod = HTXS::HiggsProdMode::TH;
93  } else if (prod_mode == "WHT") {
94  smp.th_type = HTXS::tH_type::TWH;
95  smp.prod = HTXS::HiggsProdMode::TH;
96  }
97  std::vector<std::string> dsid_str = CxxUtils::tokenize(config.GetValue(Form("HTXS.MCsamples.%s", prod_mode.c_str()), ""), " ");
98  for (const std::string& dsid : dsid_str) { smp.dsids.insert(std::atoi(dsid.c_str())); }
99  m_htxs_samples.push_back(std::move(smp));
100  }
101  return StatusCode::SUCCESS;
102  }
103 
104  // Save a TLV as 4 floats
107  const xAOD::EventInfo& eventInfo,
108  const TLorentzVector& p4) const {
109  auto floatEIDecor = [&] (const EvtInfoDecorKey& key) -> float& {
110  return SG::makeHandle<float> (key, ctx)(eventInfo);
111  };
112  floatEIDecor (keys.pt) = p4.Pt() * Gaudi::Units::GeV;
113  floatEIDecor (keys.eta) = p4.Eta();
114  floatEIDecor (keys.phi) = p4.Phi();
115  floatEIDecor (keys.m) = p4.M() * Gaudi::Units::GeV;
116  ATH_MSG_DEBUG("Decorate "<<keys.prefix<<" with pT: "<<p4.Pt()<<" [GeV], eta: "<<p4.Eta()<<", phi: "<<p4.Phi()<<", M: "<<p4.M());
117  return StatusCode::SUCCESS;
118  }
119 
120  // Save a vector of TLVs as vectors of float
123  const xAOD::EventInfo& eventInfo,
124  const std::vector<TLorentzVector>& p4s) const {
125  auto floatVEIDecor = [&] (const EvtInfoDecorKey& key) -> std::vector<float>& {
126  return SG::makeHandle<std::vector<float> > (key, ctx)(eventInfo);
127  };
128  std::vector<float>&pt = floatVEIDecor (keys.pt);
129  std::vector<float>&eta = floatVEIDecor (keys.eta);
130  std::vector<float>&phi = floatVEIDecor (keys.phi);
131  std::vector<float>&m = floatVEIDecor (keys.m);
132  pt.reserve (p4s.size());
133  eta.reserve (p4s.size());
134  phi.reserve (p4s.size());
135  m.reserve (p4s.size());
136  for (const TLorentzVector& p4 : p4s) {
137  pt.push_back(p4.Pt() * Gaudi::Units::GeV);
138  eta.push_back(p4.Eta());
139  phi.push_back(p4.Phi());
140  m.push_back(p4.M() * Gaudi::Units::GeV);
141  ATH_MSG_DEBUG("Decorate "<<keys.prefix<<" with pT: "<<p4.Pt()<<" [GeV], eta: "<<p4.Eta()<<", phi: "<<p4.Phi()<<", M: "<<p4.M());
142  }
143  return StatusCode::SUCCESS;
144  }
145 
146 
147  StatusCode TruthCategoriesDecorator::execute(const EventContext& ctx) const {
148  // Retrieve the xAOD event info
150  if (!eventInfo.isValid()) {
151  ATH_MSG_FATAL("Failed to retrieve " << m_evtInfoKey.fullKey());
152  return StatusCode::FAILURE;
153  }
154 
155  auto intEIDecor = [&] (const EvtInfoDecorKey& key) -> int& {
156  return SG::makeHandle<int> (key, ctx)(*eventInfo);
157  };
158  auto floatEIDecor = [&] (const EvtInfoDecorKey& key) -> float& {
159  return SG::makeHandle<float> (key, ctx)(*eventInfo);
160  };
161 
162  int mcChannelNumber = eventInfo->mcChannelNumber();
163  if (!mcChannelNumber) mcChannelNumber = eventInfo->runNumber(); // EVNT input
164 
165  std::vector<HTXSSample>::const_iterator smp_itr =
166  std::find_if(m_htxs_samples.begin(), m_htxs_samples.end(),
167  [mcChannelNumber](const HTXSSample& smp) { return smp.dsids.count(mcChannelNumber); });
168  if (smp_itr == m_htxs_samples.end()) {
170  ATH_MSG_DEBUG("The sample " << mcChannelNumber
171  << " is not a Higgs sample and not of further interest. Decorate the prod mode information only");
172  return StatusCode::SUCCESS;
173  }
174 
175  const HTXS::HiggsProdMode prodMode = smp_itr->prod;
176  const HTXS::tH_type th_type = smp_itr->th_type;
177 
178  // Retrieve the xAOD truth
179  SG::ReadHandle<xAOD::TruthEventContainer> xTruthEventContainer{m_truthEvtKey, ctx};
180  if (!xTruthEventContainer.isValid()) {
181  ATH_MSG_FATAL("Failed to retrieve " << m_truthEvtKey.fullKey());
182  return StatusCode::FAILURE;
183  }
184  // convert xAOD -> HepMC
185  std::vector<HepMC::GenEvent> hepmc_evts = m_xAODtoHepMCTool->getHepMCEvents(xTruthEventContainer.cptr(), eventInfo.cptr());
186 
187  if (hepmc_evts.empty()) {
188  // ANGRY MESSAGE HERE
189  ATH_MSG_FATAL("The HEP MC GenEvent conversion failed");
190  return StatusCode::FAILURE;
191  } else {
192  ATH_MSG_DEBUG("Found "<<hepmc_evts.size()<<" HepMC events.");
193  }
194 
195  // classify event according to simplified template cross section
196  std::unique_ptr<HTXS::HiggsClassification> htxs{m_higgsTruthCatTool->getHiggsTruthCategoryObject(hepmc_evts[0], prodMode)};
197  ATH_MSG_DEBUG("Truth categorization done ");
198  // Decorate the enums
199  intEIDecor (m_dec_prodModeKey) = htxs->prodMode;
200  intEIDecor (m_dec_errorCodeKey) = htxs->errorCode;
201  intEIDecor (m_dec_stage0CatKey) = htxs->stage0_cat;
202 
203  // Stage-1 binning
204  intEIDecor (m_dec_stage1CatPt25Key) = htxs->stage1_cat_pTjet25GeV;
205  intEIDecor (m_dec_stage1CatPt30Key) = htxs->stage1_cat_pTjet30GeV;
207  intEIDecor (m_dec_stage1IdxPt25Key) = HTXSstage1_to_HTXSstage1FineIndex(*htxs, th_type, true);
208  intEIDecor (m_dec_stage1IdxPt30Key) = HTXSstage1_to_HTXSstage1FineIndex(*htxs, th_type, false);
209 
210  // Stage-1.2 binning
211  intEIDecor (m_dec_stage1p2_CatPt25Key) = htxs->stage1_2_cat_pTjet25GeV;
212  intEIDecor (m_dec_stage1p2_CatPt30Key) = htxs->stage1_2_cat_pTjet30GeV;
214  intEIDecor (m_dec_stage1p2_IdxPt25Key) = HTXSstage1_2_to_HTXSstage1_2_FineIndex(*htxs, th_type, true);
215  intEIDecor (m_dec_stage1p2_IdxPt30Key) = HTXSstage1_2_to_HTXSstage1_2_FineIndex(*htxs, th_type, false);
216 
217  // Stage-1.2 finer binning
218  intEIDecor (m_dec_stage1p2_Fine_CatPt25Key) = htxs->stage1_2_fine_cat_pTjet25GeV;
219  intEIDecor (m_dec_stage1p2_Fine_CatPt30Key) = htxs->stage1_2_fine_cat_pTjet30GeV;
220  intEIDecor (m_dec_stage1p2_Fine_IdxPt25Key) = HTXSstage1_2_Fine_to_HTXSstage1_2_Fine_FineIndex(*htxs, th_type, true);
221  intEIDecor (m_dec_stage1p2_Fine_IdxPt30Key) = HTXSstage1_2_Fine_to_HTXSstage1_2_Fine_FineIndex(*htxs, th_type, false);
222 
223  intEIDecor (m_dec_NJets25Key) = htxs->jets25.size();
224  intEIDecor (m_dec_NJets30Key) = htxs->jets30.size();
225 
226  intEIDecor (m_dec_isZnunuKey) = htxs->isZ2vvDecay;
227 
228  // At the very least, save the Higgs boson pT
229  if (!m_detailLevel) {
230  floatEIDecor (m_dec_Higgs_ptKey) = htxs->higgs.Pt() * Gaudi::Units::GeV;
231  }
232  if (m_detailLevel > 0) {
233  // The Higgs and the associated V (last instances prior to decay)
234  ATH_CHECK(decorateFourVec(ctx, m_decp4_HiggsKeys, *eventInfo, htxs->higgs));
235  ATH_CHECK(decorateFourVec(ctx, m_decp4_VKeys, *eventInfo, htxs->V));
236  }
237 
238  if (m_detailLevel > 1) {
239  // Jets built excluding Higgs decay products
240  ATH_CHECK(decorateFourVecs(ctx, m_decp4_V_jets25Keys, *eventInfo, htxs->jets25));
241  ATH_CHECK(decorateFourVecs(ctx, m_decp4_V_jets30Keys, *eventInfo, htxs->jets30));
242  }
243 
244  if (m_detailLevel > 2) {
245  // Everybody might not want this ... but good for validation
246  ATH_CHECK(decorateFourVec(ctx, m_decp4_Higgs_decayKeys, *eventInfo, htxs->p4decay_higgs));
247  ATH_CHECK(decorateFourVec(ctx, m_decp4_V_decayKeys, *eventInfo, htxs->p4decay_V));
248  }
250  ATH_MSG_DEBUG("production mode: " << intEIDecor(m_dec_prodModeKey) << ", errorCode: " << intEIDecor (m_dec_errorCodeKey) << ", Stage0: " << intEIDecor (m_dec_stage0CatKey)
251  << ", Stage1 -- Jet25 " << intEIDecor (m_dec_stage1CatPt25Key) << " Idx " << intEIDecor (m_dec_stage1IdxPt25Key)
252  << ", Jet30: " << intEIDecor (m_dec_stage1CatPt30Key) << " Idx "<< intEIDecor (m_dec_stage1IdxPt30Key) << ", Stage 1.2 -- Jet25: "
253  << intEIDecor (m_dec_stage1p2_CatPt25Key) << " Idx: " << intEIDecor (m_dec_stage1p2_IdxPt25Key) << " Jet30: " << intEIDecor (m_dec_stage1p2_CatPt30Key)
254  << " Idx: " << intEIDecor (m_dec_stage1p2_IdxPt30Key) << ", HTXS NJets 25" << intEIDecor (m_dec_NJets25Key)
255  << " HTXS NJets 30 " << intEIDecor (m_dec_NJets30Key) << " Z->nunu" << intEIDecor (m_dec_isZnunuKey));
256 
257  return StatusCode::SUCCESS;
258  }
259 
260 } // namespace DerivationFramework
DerivationFramework::TruthCategoriesDecorator::m_detailLevel
Gaudi::Property< int > m_detailLevel
Definition: TruthCategoriesDecorator.h:57
python.StoreID.UNKNOWN
int UNKNOWN
Definition: StoreID.py:16
SG::WriteDecorHandleKey< xAOD::EventInfo >
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1CatPt30Key
EvtInfoDecorKey m_dec_stage1CatPt30Key
Definition: TruthCategoriesDecorator.h:74
DerivationFramework::TruthCategoriesDecorator::m_decp4_Higgs_decayKeys
FourMomDecorationKeys m_decp4_Higgs_decayKeys
Definition: TruthCategoriesDecorator.h:141
DerivationFramework::TruthCategoriesDecorator::m_truthEvtKey
SG::ReadHandleKey< xAOD::TruthEventContainer > m_truthEvtKey
Definition: TruthCategoriesDecorator.h:59
GeV
#define GeV
Definition: PhysicsAnalysis/TauID/TauAnalysisTools/Root/HelperFunctions.cxx:17
ATH_MSG_FATAL
#define ATH_MSG_FATAL(x)
Definition: AthMsgStreamMacros.h:34
HTXS::GG2ZH
@ GG2ZH
Definition: HiggsTemplateCrossSectionsDefs.h:29
DerivationFramework::TruthCategoriesDecorator::m_dec_Higgs_ptKey
EvtInfoDecorKey m_dec_Higgs_ptKey
Definition: TruthCategoriesDecorator.h:131
TruthCategoriesDecorator.h
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
SG::ReadHandle
Definition: StoreGate/StoreGate/ReadHandle.h:67
CxxUtils::tokenize
std::vector< std::string > tokenize(const std::string &the_str, std::string_view delimiters)
Splits the string into smaller substrings.
Definition: Control/CxxUtils/Root/StringUtils.cxx:15
HTXS::GGF
@ GGF
Definition: HiggsTemplateCrossSectionsDefs.h:29
DerivationFramework::TruthCategoriesDecorator::m_dec_errorCodeKey
EvtInfoDecorKey m_dec_errorCodeKey
Definition: TruthCategoriesDecorator.h:67
TruthParticleContainer.h
StringUtils.h
test_pyathena.pt
pt
Definition: test_pyathena.py:11
DerivationFramework::TruthCategoriesDecorator::m_dec_NJets25Key
EvtInfoDecorKey m_dec_NJets25Key
Definition: TruthCategoriesDecorator.h:101
DerivationFramework::TruthCategoriesDecorator::m_dec_prodModeKey
EvtInfoDecorKey m_dec_prodModeKey
Definition: TruthCategoriesDecorator.h:65
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1p2_CatPt30Key
EvtInfoDecorKey m_dec_stage1p2_CatPt30Key
Definition: TruthCategoriesDecorator.h:84
DerivationFramework::TruthCategoriesDecorator::m_configPath
Gaudi::Property< std::string > m_configPath
Definition: TruthCategoriesDecorator.h:40
DerivationFramework::TruthCategoriesDecorator::m_dec_stage0CatKey
EvtInfoDecorKey m_dec_stage0CatKey
Definition: TruthCategoriesDecorator.h:69
HTXS::Stage0::BBH
@ BBH
Definition: HiggsTemplateCrossSectionsDefs.h:46
xAOD::mcChannelNumber
mcChannelNumber
Definition: EventInfo_v1.cxx:197
config
Definition: PhysicsAnalysis/AnalysisCommon/AssociationUtils/python/config.py:1
DerivationFramework::TruthCategoriesDecorator::execute
StatusCode execute(const EventContext &ctx) const
Definition: TruthCategoriesDecorator.cxx:147
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
DerivationFramework::TruthCategoriesDecorator::m_decp4_V_jets25Keys
FourMomDecorationKeys m_decp4_V_jets25Keys
Definition: TruthCategoriesDecorator.h:137
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1p2_CatPt25Key
EvtInfoDecorKey m_dec_stage1p2_CatPt25Key
Definition: TruthCategoriesDecorator.h:82
DerivationFramework::TruthCategoriesDecorator::TruthCategoriesDecorator
TruthCategoriesDecorator(const std::string &n, ISvcLocator *p)
Definition: TruthCategoriesDecorator.cxx:22
HTXS::Stage0::VBF
@ VBF
Definition: HiggsTemplateCrossSectionsDefs.h:44
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
DerivationFramework::TruthCategoriesDecorator::m_evtInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_evtInfoKey
Definition: TruthCategoriesDecorator.h:60
DerivationFramework::TruthCategoriesDecorator::HTXSSample::prod
HTXS::HiggsProdMode prod
Higgs production modes, corresponding to input sample.
Definition: TruthCategoriesDecorator.h:43
DerivationFramework::TruthCategoriesDecorator::m_htxs_samples
std::vector< HTXSSample > m_htxs_samples
Definition: TruthCategoriesDecorator.h:50
HTXS::TWH
@ TWH
Definition: HiggsTemplateCrossSectionsDefs.h:34
DerivationFramework::TruthCategoriesDecorator::m_decp4_VKeys
FourMomDecorationKeys m_decp4_VKeys
Definition: TruthCategoriesDecorator.h:135
beamspotman.n
n
Definition: beamspotman.py:731
Generate_dsid_ranseed.dsid
dsid
Definition: Generate_dsid_ranseed.py:6
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
DerivationFramework::TruthCategoriesDecorator::decorateFourVecs
StatusCode decorateFourVecs(const EventContext &ctx, const FourMomDecorationKeys &keys, const xAOD::EventInfo &eventInfo, const std::vector< TLorentzVector > &p4s) const
Definition: TruthCategoriesDecorator.cxx:121
DerivationFramework::TruthCategoriesDecorator::initialize
StatusCode initialize()
Definition: TruthCategoriesDecorator.cxx:24
WriteDecorHandle.h
Handle class for adding a decoration to an object.
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
DerivationFramework::TruthCategoriesDecorator::HTXSSample
Definition: TruthCategoriesDecorator.h:41
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1p2_IdxPt25Key
EvtInfoDecorKey m_dec_stage1p2_IdxPt25Key
Definition: TruthCategoriesDecorator.h:86
SG::VarHandleKey::initialize
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
Definition: AthToolSupport/AsgDataHandles/Root/VarHandleKey.cxx:103
TruthVertex.h
DerivationFramework::TruthCategoriesDecorator::decorateFourVec
StatusCode decorateFourVec(const EventContext &ctx, const FourMomDecorationKeys &keys, const xAOD::EventInfo &eventInfo, const TLorentzVector &p4) const
Definition: TruthCategoriesDecorator.cxx:105
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1p2_Fine_IdxPt30Key
EvtInfoDecorKey m_dec_stage1p2_Fine_IdxPt30Key
Definition: TruthCategoriesDecorator.h:98
DerivationFramework::TruthCategoriesDecorator::FourMomDecorationKeys::initialize
StatusCode initialize(bool used=true)
Definition: TruthCategoriesDecorator.h:122
HTXS::HiggsProdMode
HiggsProdMode
Higgs production modes, corresponding to input sample.
Definition: HiggsTemplateCrossSectionsDefs.h:27
PathResolver.h
DerivationFramework::TruthCategoriesDecorator::m_higgsTruthCatTool
ToolHandle< IHiggsTruthCategoryTool > m_higgsTruthCatTool
Definition: TruthCategoriesDecorator.h:37
DerivationFramework::TruthCategoriesDecorator::m_xAODtoHepMCTool
ToolHandle< IxAODtoHepMCTool > m_xAODtoHepMCTool
Definition: TruthCategoriesDecorator.h:36
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1p2_Fine_IdxPt25Key
EvtInfoDecorKey m_dec_stage1p2_Fine_IdxPt25Key
Definition: TruthCategoriesDecorator.h:96
DerivationFramework::TruthCategoriesDecorator::m_decp4_V_jets30Keys
FourMomDecorationKeys m_decp4_V_jets30Keys
Definition: TruthCategoriesDecorator.h:139
DerivationFramework::TruthCategoriesDecorator::m_decp4_HiggsKeys
FourMomDecorationKeys m_decp4_HiggsKeys
Definition: TruthCategoriesDecorator.h:133
HTXS::Stage0::TH
@ TH
Definition: HiggsTemplateCrossSectionsDefs.h:46
xAOD::EventInfo_v1
Class describing the basic event information.
Definition: EventInfo_v1.h:43
PathResolverFindCalibFile
std::string PathResolverFindCalibFile(const std::string &logical_file_name)
Definition: PathResolver.cxx:431
HTXS::THQB
@ THQB
Definition: HiggsTemplateCrossSectionsDefs.h:34
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1CatPt25Key
EvtInfoDecorKey m_dec_stage1CatPt25Key
Definition: TruthCategoriesDecorator.h:72
SG::WriteDecorHandleKey::initialize
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
JetContainer.h
HTXS::tH_type
tH_type
Additional identifier flag for TH production modes.
Definition: HiggsTemplateCrossSectionsDefs.h:34
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1p2_Fine_CatPt25Key
EvtInfoDecorKey m_dec_stage1p2_Fine_CatPt25Key
Definition: TruthCategoriesDecorator.h:92
DerivationFramework::TruthCategoriesDecorator::FourMomDecorationKeys
Set of DecorHandleKeys to write the four momenta needed for the HTXS categorization.
Definition: TruthCategoriesDecorator.h:108
DerivationFramework::TruthCategoriesDecorator::m_decp4_V_decayKeys
FourMomDecorationKeys m_decp4_V_decayKeys
Definition: TruthCategoriesDecorator.h:143
HTXS::Stage0::TTH
@ TTH
Definition: HiggsTemplateCrossSectionsDefs.h:46
CxxUtils::atoi
int atoi(std::string_view str)
Helper functions to unpack numbers decoded in string into integers and doubles The strings are requir...
Definition: Control/CxxUtils/Root/StringUtils.cxx:85
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1p2_IdxPt30Key
EvtInfoDecorKey m_dec_stage1p2_IdxPt30Key
Definition: TruthCategoriesDecorator.h:88
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:798
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1IdxPt30Key
EvtInfoDecorKey m_dec_stage1IdxPt30Key
Definition: TruthCategoriesDecorator.h:78
ReadHandle.h
Handle class for reading from StoreGate.
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1p2_Fine_CatPt30Key
EvtInfoDecorKey m_dec_stage1p2_Fine_CatPt30Key
Definition: TruthCategoriesDecorator.h:94
DerivationFramework::TruthCategoriesDecorator::m_dec_isZnunuKey
EvtInfoDecorKey m_dec_isZnunuKey
Definition: TruthCategoriesDecorator.h:105
HTXS::WH
@ WH
Definition: HiggsTemplateCrossSectionsDefs.h:29
HepMCHelpers.h
DerivationFramework::TruthCategoriesDecorator::m_dec_stage1IdxPt25Key
EvtInfoDecorKey m_dec_stage1IdxPt25Key
Definition: TruthCategoriesDecorator.h:76
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37
HTXS::QQ2ZH
@ QQ2ZH
Definition: HiggsTemplateCrossSectionsDefs.h:29
DerivationFramework::TruthCategoriesDecorator::m_dec_NJets30Key
EvtInfoDecorKey m_dec_NJets30Key
Definition: TruthCategoriesDecorator.h:103