|
ATLAS Offline Software
|
Go to the documentation of this file.
7 #ifndef XAODBASE_IPARTICLE_H
8 #define XAODBASE_IPARTICLE_H
11 #include <TLorentzVector.h>
55 virtual double pt()
const = 0;
57 virtual double eta()
const = 0;
59 virtual double phi()
const = 0;
61 virtual double m()
const = 0;
63 virtual double e()
const = 0;
97 const std::string& clsname =
"" ) {
99 return SG::AuxElement::auxdata< T >(
name, clsname );
116 const std::string& clsname =
"" )
const {
118 return SG::AuxElement::auxdata< T >(
name, clsname );
132 const std::string& clsname =
"" )
const {
134 return SG::AuxElement::isAvailable< T >(
name, clsname );
148 const std::string& clsname =
"" )
const {
150 return SG::AuxElement::isAvailableWritable< T >(
name, clsname );
168 #ifndef XAOD_STANDALONE
171 #endif // not XAOD_STANDALONE
173 #endif // XAODBASE_IPARTICLE_H
SG_BASE(xAOD::IParticle, SG::AuxElement)
IParticle & operator=(IParticle &&)=delete
Base class for elements of a container that can have aux data.
virtual double rapidity() const =0
The true rapidity (y) of the particle.
virtual Type::ObjectType type() const =0
The type of the object as a simple enumeration.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Class providing the definition of the 4-vector interface.
SG::IAuxStore * getStore() const
Return the current store, as a non-const interface.
SG::Accessor< T, ALLOC > Accessor
TLorentzVector FourMom_t
Definition of the 4-momentum type.
Provide an interface for finding inheritance information at run time.
IParticle(IParticle &&)=delete
virtual double pt() const =0
The transverse momentum ( ) of the particle.
virtual ~IParticle()=default
Virtual destructor, to make vtable happy...
const T & auxdata(const std::string &name, const std::string &clsname="") const
Fetch an aux data variable, as a const reference.
virtual FourMom_t p4() const =0
The full 4-momentum of the particle.
bool isAvailable(const std::string &name, const std::string &clsname="") const
Check if a user property is available for reading or not.
IParticle(const IParticle &)=default
const SG::IConstAuxStore * getConstStore() const
Return the current store, as a const interface.
virtual double eta() const =0
The pseudorapidity ( ) of the particle.
T & auxdata(const std::string &name, const std::string &clsname="")
Fetch an aux data variable, as a non-const reference.
virtual double phi() const =0
The azimuthal angle ( ) of the particle.
ObjectType
Type of objects that have a representation in the xAOD EDM.
bool isAvailableWritable(const std::string &name, const std::string &clsname="") const
Check if a user property is available for writing or not.
IParticle & operator=(const IParticle &)=default
virtual double e() const =0
The total energy of the particle.
Base class for elements of a container that can have aux data.
virtual double m() const =0
The invariant mass of the particle.