|
ATLAS Offline Software
|
Go to the documentation of this file.
4 #ifndef MCTRUTHCLASSIFIER_IMCTRUTHCLASSIFIER_H
5 #define MCTRUTHCLASSIFIER_IMCTRUTHCLASSIFIER_H
21 #include <unordered_map>
24 #ifndef GENERATIONBASE
38 #if !defined(XAOD_ANALYSIS) && !defined(GENERATIONBASE)
72 #ifndef GENERATIONBASE
80 std::vector<std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>>
egPartClas;
99 #ifndef GENERATIONBASE
104 #ifndef XAOD_ANALYSIS
113 virtual std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>
116 #ifndef XAOD_ANALYSIS
117 virtual std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>
120 virtual std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>
124 #ifndef GENERATIONBASE
127 virtual std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>
130 virtual std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>
133 virtual std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>
136 virtual std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>
139 virtual std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>
142 virtual std::pair<MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin>
148 #endif // MCTRUTHCLASSIFIER_IMCTRUTHCLASSIFIER_H
virtual std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > particleTruthClassifier(const xAOD::CaloCluster *, MCTruthPartClassifier::Info *info=nullptr) const =0
void resetMotherProperties()
virtual std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > particleTruthClassifier(const xAOD::Electron *, MCTruthPartClassifier::Info *info=nullptr) const =0
std::vector< std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > > egPartClas
virtual const xAOD::TruthParticle * egammaClusMatch(const xAOD::CaloCluster *, bool, MCTruthPartClassifier::Info *info=nullptr) const =0
virtual std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > particleTruthClassifier(const xAOD::Muon *, MCTruthPartClassifier::Info *info=nullptr) const =0
virtual std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > particleTruthClassifier(const xAOD::Photon *, MCTruthPartClassifier::Info *info=nullptr) const =0
std::vector< const xAOD::TruthParticle * > cnvPhotTrkToTruthPart
const xAOD::TruthParticle * photonMother
virtual std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > particleTruthClassifier(const HepMcParticleLink &theLink, MCTruthPartClassifier::Info *info=nullptr) const =0
const xAOD::TruthParticle * PhotonMother() const
virtual const xAOD::TruthParticle * getGenPart(const xAOD::TrackParticle *, MCTruthPartClassifier::Info *info=nullptr) const =0
MCTruthPartClassifier::ParticleOutCome particleOutCome
a link optimized in size for a GenParticle in a McEventCollection
Description of a calorimeter cluster.
Info(const EventContext &ctx)
void setMotherProperties(const xAOD::TruthParticle *from)
virtual std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > particleTruthClassifier(const xAOD::Jet *, bool DR, MCTruthPartClassifier::Info *info=nullptr) const =0
Class describing a truth particle in the MC record.
virtual ~IMCTruthClassifier()=default
Virtual destructor.
virtual std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > particleTruthClassifier(HepMC::ConstGenParticlePtr, MCTruthPartClassifier::Info *info=nullptr) const =0
const GenParticle * ConstGenParticlePtr
const xAOD::TruthParticle * genPart
const EventContext & eventContext
std::vector< float > egPartdR
std::vector< MCTruthPartClassifier::ParticleOrigin > cnvPhotPartOrig
virtual std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > particleTruthClassifier(const xAOD::TruthParticle *, MCTruthPartClassifier::Info *info=nullptr) const =0
=============================================================================
const xAOD::TruthParticle * Mother() const
std::vector< const xAOD::TrackParticle * > cnvPhotTrkPtr
Class describing a TrackParticle.
const xAOD::TruthParticle * mother
std::vector< MCTruthPartClassifier::ParticleType > cnvPhotPartType
std::vector< const xAOD::TruthParticle * > egPartPtr
virtual std::pair< MCTruthPartClassifier::ParticleType, MCTruthPartClassifier::ParticleOrigin > particleTruthClassifier(const xAOD::TrackParticle *, MCTruthPartClassifier::Info *info=nullptr) const =0