 |
ATLAS Offline Software
|
Go to the documentation of this file.
6 #include "GaudiKernel/EventContext.h"
40 baseName +
".firstEgMotherTruthParticleLink";
62 return StatusCode::SUCCESS;
69 const EventContext& ctx = Gaudi::Hive::currentContext();
79 tPL(
"truthParticleLink");
108 if (tPL.isAvailable(*
el) && tPL(*el).isValid()) {
116 firstEgMotherTT(*
el) = 0;
117 firstEgMotherTO(*
el) = 0;
119 firstEgMotherPdgID(*
el) = 0;
126 firstEgMotherTT(*
el) =
res.first;
127 firstEgMotherTO(*
el) =
res.second;
128 firstEgMotherPdgID(*
el) = firstElTruth->
pdgId();
130 firstElTruth, *truthContainer, ctx);
131 firstEgMotherTPL(*
el) = link;
136 lastEgMotherTT(*
el) = 0;
137 lastEgMotherTO(*
el) = 0;
139 lastEgMotherPdgID(*
el) = 0;
145 lastEgMotherTT(*
el) =
res.first;
146 lastEgMotherTO(*
el) =
res.second;
147 lastEgMotherPdgID(*
el) = lastElTruth->
pdgId();
149 lastElTruth, *truthContainer, ctx);
150 lastEgMotherTPL(*
el) = link;
153 return StatusCode::SUCCESS;
SG::WriteDecorHandleKey< xAOD::ElectronContainer > m_lastEgMotherPdgId
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthContainer
Input truth particle container.
SG::WriteDecorHandleKey< xAOD::ElectronContainer > m_firstEgMotherTruthType
Helper class to provide type-safe access to aux data.
SG::WriteDecorHandleKey< xAOD::ElectronContainer > m_firstEgMotherTruthOrigin
SG::WriteDecorHandleKey< xAOD::ElectronContainer > m_lastEgMotherTruthOrigin
SG::WriteDecorHandleKey< xAOD::ElectronContainer > m_firstEgMotherTruthParticleLink
SG::ReadHandleKey< xAOD::ElectronContainer > m_electronContainer
input electron container
const std::string & key() const
Return the StoreGate ID for the referenced object.
SG::WriteDecorHandleKey< xAOD::ElectronContainer > m_lastEgMotherTruthType
const xAOD::TruthParticle * getBkgElectronMother(const xAOD::Electron *el, const bool allTheWayBack=true)
Helper wrapper function for calling the function above extracting the truth from a reco electron.
SG::WriteDecorHandleKey< xAOD::ElectronContainer > m_firstEgMotherPdgId
SG::WriteDecorHandleKey< xAOD::ElectronContainer > m_truthPdgId
virtual StatusCode initialize() override final
::StatusCode StatusCode
StatusCode definition for legacy code.
Class describing a truth particle in the MC record.
Handle class for adding a decoration to an object.
std::pair< std::vector< unsigned int >, bool > res
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
virtual StatusCode addBranches() const override final
ElectronContainer_v1 ElectronContainer
Definition of the current "electron container version".
ElementLink implementation for ROOT usage.
BkgElectronClassification(const std::string &t, const std::string &n, const IInterface *p)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
ToolHandle< IMCTruthClassifier > m_mcTruthClassifier
MCTruthClassifier.
SG::WriteDecorHandleKey< xAOD::ElectronContainer > m_lastEgMotherTruthParticleLink
int pdgId() const
PDG ID code.