![]() |
ATLAS Offline Software
|
Class providing the definition of the 4-vector interface. More...
#include <IParticle.h>
Inherits SG::AuxElement.
Inherited by PanTau::PanTauSeed, PanTau::TauConstituent, xAOD::AFPProton_v1, xAOD::CaloCluster_v1, xAOD::CaloTower_v1, xAOD::CaloVertexedClusterBase, xAOD::CompositeParticle_v1, xAOD::DiTauJet_v1, xAOD::Egamma_v1, xAOD::FlowElement_v1, xAOD::GBlock_v1, xAOD::JGTower_v1, xAOD::Jet_v1, xAOD::L2CombinedMuon_v1, xAOD::L2IsoMuon_v1, xAOD::L2StandAloneMuon_v1, xAOD::L2StandAloneMuon_v2, xAOD::Muon_v1, xAOD::NeutralParticle_v1, xAOD::PFO_v1, xAOD::Particle_v1, xAOD::TauJet_v1, xAOD::TauJet_v2, xAOD::TauJet_v3, xAOD::TauTrack_v1, xAOD::TrackCaloCluster_v1, xAOD::TrackParticle_v1, xAOD::TrigElectron_v1, xAOD::TrigPhoton_v1, xAOD::TriggerTower_v2, and xAOD::TruthParticle_v1.
Public Member Functions | |
| virtual | ~IParticle ()=default |
| Virtual destructor, to make vtable happy... | |
| IParticle ()=default | |
| IParticle (const IParticle &)=default | |
| IParticle & | operator= (const IParticle &)=default |
| IParticle (IParticle &&)=delete | |
| IParticle & | operator= (IParticle &&)=delete |
| virtual Type::ObjectType | type () const =0 |
| The type of the object as a simple enumeration. | |
Functions for getting and setting user properties | |
| template<class T> | |
| XAOD_AUXDATA_DEPRECATED T & | auxdata (const std::string &name, const std::string &clsname="") |
| Fetch an aux data variable, as a non-const reference. | |
| template<class T> | |
| XAOD_AUXDATA_DEPRECATED const T & | auxdata (const std::string &name, const std::string &clsname="") const |
| Fetch an aux data variable, as a const reference. | |
| template<class T> | |
| XAOD_AUXDATA_DEPRECATED bool | isAvailable (const std::string &name, const std::string &clsname="") const |
| Check if a user property is available for reading or not. | |
| template<class T> | |
| XAOD_AUXDATA_DEPRECATED bool | isAvailableWritable (const std::string &name, const std::string &clsname="") const |
| Check if a user property is available for writing or not. | |
Functions describing the 4-momentum of the object | |
| typedef TLorentzVector | FourMom_t |
| Definition of the 4-momentum type. | |
| virtual double | pt () const =0 |
| The transverse momentum ( \(p_T\)) of the particle. | |
| virtual double | eta () const =0 |
| The pseudorapidity ( \(\eta\)) of the particle. | |
| virtual double | phi () const =0 |
| The azimuthal angle ( \(\phi\)) of the particle. | |
| virtual double | m () const =0 |
| The invariant mass of the particle. | |
| virtual double | e () const =0 |
| The total energy of the particle. | |
| virtual double | rapidity () const =0 |
| The true rapidity (y) of the particle. | |
| virtual FourMom_t | p4 () const =0 |
| The full 4-momentum of the particle. | |
Class providing the definition of the 4-vector interface.
All particle-like classes in the xAOD EDM inherit from this simple interface class to make it simple to write generic analysis code for the objects.
Definition at line 41 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
| typedef TLorentzVector xAOD::IParticle::FourMom_t |
Definition of the 4-momentum type.
Definition at line 69 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
|
virtualdefault |
Virtual destructor, to make vtable happy...
|
default |
|
delete |
|
inline |
Fetch an aux data variable, as a non-const reference.
This function provides an easy way for users to decorate objects with auxiliary data.
Take note that this function is slow. Should not be used inside time-critical code.
Definition at line 98 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
|
inline |
Fetch an aux data variable, as a const reference.
This function provides an easy way for users to retrieve auxiliary decorations from an object.
Take note that this function is slow. Should not be used inside time-critical code.
Definition at line 118 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
|
pure virtual |
The total energy of the particle.
Implemented in PanTau::PanTauSeed, PanTau::TauConstituent, xAOD::AFPProton_v1, xAOD::CaloCluster_v1, xAOD::CaloTower_v1, xAOD::CaloVertexedClusterBase, xAOD::CompositeParticle_v1, xAOD::DiTauJet_v1, xAOD::Egamma_v1, xAOD::FlowElement_v1, xAOD::GBlock_v1, xAOD::Jet_v1, xAOD::JGTower_v1, xAOD::L2CombinedMuon_v1, xAOD::L2IsoMuon_v1, xAOD::L2StandAloneMuon_v1, xAOD::L2StandAloneMuon_v2, xAOD::Muon_v1, xAOD::NeutralParticle_v1, xAOD::Particle_v1, xAOD::PFO_v1, xAOD::Photon_v1, xAOD::TauJet_v1, xAOD::TauJet_v2, xAOD::TauJet_v3, xAOD::TauTrack_v1, xAOD::TrackCaloCluster_v1, xAOD::TrackParticle_v1, xAOD::TrigElectron_v1, xAOD::TriggerTower_v2, xAOD::TrigPhoton_v1, and xAOD::TruthParticle_v1.
|
pure virtual |
The pseudorapidity ( \(\eta\)) of the particle.
Implemented in PanTau::PanTauSeed, PanTau::TauConstituent, xAOD::AFPProton_v1, xAOD::CaloCluster_v1, xAOD::CaloTower_v1, xAOD::CaloVertexedClusterBase, xAOD::CompositeParticle_v1, xAOD::DiTauJet_v1, xAOD::Egamma_v1, xAOD::FlowElement_v1, xAOD::GBlock_v1, xAOD::Jet_v1, xAOD::JGTower_v1, xAOD::L2CombinedMuon_v1, xAOD::L2IsoMuon_v1, xAOD::L2StandAloneMuon_v1, xAOD::L2StandAloneMuon_v2, xAOD::Muon_v1, xAOD::NeutralParticle_v1, xAOD::Particle_v1, xAOD::PFO_v1, xAOD::TauJet_v1, xAOD::TauJet_v2, xAOD::TauJet_v3, xAOD::TauTrack_v1, xAOD::TrackCaloCluster_v1, xAOD::TrackParticle_v1, xAOD::TrigElectron_v1, xAOD::TriggerTower_v2, xAOD::TrigPhoton_v1, and xAOD::TruthParticle_v1.
|
inline |
Check if a user property is available for reading or not.
This function should be used to check if a user property which may or may not exist, is set on the object.
Definition at line 135 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
|
inline |
Check if a user property is available for writing or not.
This function can be used to check whether it will be possible to set a user property on the object.
Definition at line 152 of file Event/xAOD/xAODBase/xAODBase/IParticle.h.
|
pure virtual |
The invariant mass of the particle.
Implemented in PanTau::PanTauSeed, PanTau::TauConstituent, xAOD::AFPProton_v1, xAOD::CaloCluster_v1, xAOD::CaloTower_v1, xAOD::CaloVertexedClusterBase, xAOD::CompositeParticle_v1, xAOD::DiTauJet_v1, xAOD::Electron_v1, xAOD::FlowElement_v1, xAOD::GBlock_v1, xAOD::Jet_v1, xAOD::JGTower_v1, xAOD::L2CombinedMuon_v1, xAOD::L2IsoMuon_v1, xAOD::L2StandAloneMuon_v1, xAOD::L2StandAloneMuon_v2, xAOD::Muon_v1, xAOD::NeutralParticle_v1, xAOD::Particle_v1, xAOD::PFO_v1, xAOD::Photon_v1, xAOD::TauJet_v1, xAOD::TauJet_v2, xAOD::TauJet_v3, xAOD::TauTrack_v1, xAOD::TrackCaloCluster_v1, xAOD::TrackParticle_v1, xAOD::TrigElectron_v1, xAOD::TriggerTower_v2, xAOD::TrigPhoton_v1, and xAOD::TruthParticle_v1.
|
pure virtual |
The full 4-momentum of the particle.
Implemented in PanTau::PanTauSeed, PanTau::TauConstituent, xAOD::AFPProton_v1, xAOD::CaloCluster_v1, xAOD::CaloTower_v1, xAOD::CaloVertexedClusterBase, xAOD::CompositeParticle_v1, xAOD::DiTauJet_v1, xAOD::Egamma_v1, xAOD::FlowElement_v1, xAOD::GBlock_v1, xAOD::Jet_v1, xAOD::JGTower_v1, xAOD::L2CombinedMuon_v1, xAOD::L2IsoMuon_v1, xAOD::L2StandAloneMuon_v1, xAOD::L2StandAloneMuon_v2, xAOD::Muon_v1, xAOD::NeutralParticle_v1, xAOD::Particle_v1, xAOD::PFO_v1, xAOD::TauJet_v1, xAOD::TauJet_v2, xAOD::TauJet_v3, xAOD::TauTrack_v1, xAOD::TrackCaloCluster_v1, xAOD::TrackParticle_v1, xAOD::TrigElectron_v1, xAOD::TriggerTower_v2, xAOD::TrigPhoton_v1, and xAOD::TruthParticle_v1.
|
pure virtual |
The azimuthal angle ( \(\phi\)) of the particle.
Implemented in PanTau::PanTauSeed, PanTau::TauConstituent, xAOD::AFPProton_v1, xAOD::CaloCluster_v1, xAOD::CaloTower_v1, xAOD::CaloVertexedClusterBase, xAOD::CompositeParticle_v1, xAOD::DiTauJet_v1, xAOD::Egamma_v1, xAOD::FlowElement_v1, xAOD::GBlock_v1, xAOD::Jet_v1, xAOD::JGTower_v1, xAOD::L2CombinedMuon_v1, xAOD::L2IsoMuon_v1, xAOD::L2StandAloneMuon_v1, xAOD::L2StandAloneMuon_v2, xAOD::Muon_v1, xAOD::NeutralParticle_v1, xAOD::Particle_v1, xAOD::PFO_v1, xAOD::TauJet_v1, xAOD::TauJet_v2, xAOD::TauJet_v3, xAOD::TauTrack_v1, xAOD::TrackCaloCluster_v1, xAOD::TrackParticle_v1, xAOD::TrigElectron_v1, xAOD::TriggerTower_v2, xAOD::TrigPhoton_v1, and xAOD::TruthParticle_v1.
|
pure virtual |
The transverse momentum ( \(p_T\)) of the particle.
Implemented in PanTau::PanTauSeed, PanTau::TauConstituent, xAOD::AFPProton_v1, xAOD::CaloCluster_v1, xAOD::CaloTower_v1, xAOD::CaloVertexedClusterBase, xAOD::CompositeParticle_v1, xAOD::DiTauJet_v1, xAOD::Egamma_v1, xAOD::FlowElement_v1, xAOD::GBlock_v1, xAOD::Jet_v1, xAOD::JGTower_v1, xAOD::L2CombinedMuon_v1, xAOD::L2IsoMuon_v1, xAOD::L2StandAloneMuon_v1, xAOD::L2StandAloneMuon_v2, xAOD::Muon_v1, xAOD::NeutralParticle_v1, xAOD::Particle_v1, xAOD::PFO_v1, xAOD::TauJet_v1, xAOD::TauJet_v2, xAOD::TauJet_v3, xAOD::TauTrack_v1, xAOD::TrackCaloCluster_v1, xAOD::TrackParticle_v1, xAOD::TrigElectron_v1, xAOD::TriggerTower_v2, xAOD::TrigPhoton_v1, and xAOD::TruthParticle_v1.
|
pure virtual |
The true rapidity (y) of the particle.
Implemented in PanTau::PanTauSeed, PanTau::TauConstituent, xAOD::AFPProton_v1, xAOD::CaloCluster_v1, xAOD::CaloTower_v1, xAOD::CaloVertexedClusterBase, xAOD::CompositeParticle_v1, xAOD::DiTauJet_v1, xAOD::Egamma_v1, xAOD::FlowElement_v1, xAOD::GBlock_v1, xAOD::Jet_v1, xAOD::JGTower_v1, xAOD::L2CombinedMuon_v1, xAOD::L2IsoMuon_v1, xAOD::L2StandAloneMuon_v1, xAOD::L2StandAloneMuon_v2, xAOD::Muon_v1, xAOD::NeutralParticle_v1, xAOD::Particle_v1, xAOD::PFO_v1, xAOD::Photon_v1, xAOD::TauJet_v1, xAOD::TauJet_v2, xAOD::TauJet_v3, xAOD::TauTrack_v1, xAOD::TrackCaloCluster_v1, xAOD::TrackParticle_v1, xAOD::TrigElectron_v1, xAOD::TriggerTower_v2, xAOD::TrigPhoton_v1, and xAOD::TruthParticle_v1.
|
pure virtual |
The type of the object as a simple enumeration.
Implemented in PanTau::PanTauSeed, PanTau::TauConstituent, xAOD::AFPProton_v1, xAOD::CaloCluster_v1, xAOD::CaloTower_v1, xAOD::CaloVertexedClusterBase, xAOD::CompositeParticle_v1, xAOD::DiTauJet_v1, xAOD::Egamma_v1, xAOD::Electron_v1, xAOD::FlowElement_v1, xAOD::GBlock_v1, xAOD::Jet_v1, xAOD::JGTower_v1, xAOD::L2CombinedMuon_v1, xAOD::L2IsoMuon_v1, xAOD::L2StandAloneMuon_v1, xAOD::L2StandAloneMuon_v2, xAOD::Muon_v1, xAOD::NeutralParticle_v1, xAOD::Particle_v1, xAOD::PFO_v1, xAOD::Photon_v1, xAOD::TauJet_v1, xAOD::TauJet_v2, xAOD::TauJet_v3, xAOD::TauTrack_v1, xAOD::TrackCaloCluster_v1, xAOD::TrackParticle_v1, xAOD::TrigElectron_v1, xAOD::TriggerTower_v2, xAOD::TrigPhoton_v1, and xAOD::TruthParticle_v1.