27 return std::hypot(
px(),
py() );
57 return Type::Particle;
72 static const Accessor< float > acc1(
"px" );
74 static const Accessor< float > acc2(
"py" );
76 static const Accessor< float > acc3(
"pz" );
78 static const Accessor< float > acc4(
"e" );
87 static const Accessor< float > acc1(
"px" );
89 static const Accessor< float > acc2(
"py" );
91 static const Accessor< float > acc3(
"pz" );
93 static const Accessor< float > acc4(
"e" );
121 static const SG::AuxElement::Accessor< float >
chargeAcc(
"charge" );
130 static const SG::AuxElement::Accessor< int >
pdgAcc(
"pdgId" );
131 return pdgAcc.isAvailable( *
this );
#define AUXSTORE_PRIMITIVE_GETTER_WITH_CAST(CL, PERSTYPE, TRANSTYPE, NAME)
Macro creating a getter function with a type conversion.
#define AUXSTORE_PRIMITIVE_SETTER_WITH_CAST(CL, PERSTYPE, TRANSTYPE, NAME, SETTER)
Macro creating a setter function with a type conversion.
#define AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(CL, TYPE, NAME, SETTER)
Macro creating the accessors of primitive auxiliary properties.
std::vector< size_t > vec
Description of a generic particle.
virtual double e() const
The total energy of the particle.
virtual double phi() const
The azimuthal angle ( ) of the particle.
virtual double rapidity() const
The true rapidity (y) of the particle.
virtual double eta() const
The pseudorapidity ( ) of the particle.
double py() const
Get the py momentum component of the particle.
virtual FourMom_t p4() const
The full 4-momentum of the particle.
bool hasPdgId() const
Check if this particle has its charge set.
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< double > > GenVecFourMom_t
Base 4 Momentum type (GenVector).
bool hasCharge() const
Check if this particle has its charge set.
Particle_v1()
Default constructor.
virtual double m() const
The invariant mass of the particle.
void setPxPyPzE(double px, double py, double pz, double e)
Set the 4-vec.
IParticle::FourMom_t FourMom_t
Definition of the 4-momentum type.
double px() const
Get the px momentum component of the particle.
void setP4(const FourMom_t &vec)
Set the 4-vec.
void toPersistent()
Function preparing the object to be persistified.
virtual Type::ObjectType type() const
The type of the object as a simple enumeration.
double pz() const
Get the pz momentum component of the particle.
virtual double pt() const
The transverse momentum ( ) of the particle.
double et() const
The transverse energy ( ) of the particle.
GenVecFourMom_t genvecP4() const
The full 4-momentum of the particle : GenVector form.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
AUXSTORE_PRIMITIVE_SETTER_WITH_CAST(CompositeParticle_v1, float, double, px, setPx) AUXSTORE_PRIMITIVE_SETTER_WITH_CAST(CompositeParticle_v1
static const SG::AuxElement::Accessor< int > pdgAcc("pdgId")
static const SG::AuxElement::Accessor< float > chargeAcc("charge")