75 const std::vector<const Gaudi::ParticleProperty*>&
daughters )
99 sc = idau->validate( svc );
110 for (
const auto& dau :
m_daughters ) { dau.fillStream( s ); }
119 return s <<
' ' <<
m_pid.pid() <<
' ';
124 return s <<
' ' <<
m_name <<
' ';
128 std::ostringstream s;
135 for (
const auto& pp : daugs ) *
this += pp;
140 for (
const auto& pp : daugs ) *
this += pp;
145 for (
const auto& pp : daugs ) *
this += pp;
167 if ( 0 == index ) {
return m_mother; }
the helper representation of the item in the decay chain
std::string m_name
the particle name
const Gaudi::ParticleProperty * pp() const
get the particle property
const Gaudi::ParticleID & pid() const
get the particle PID
StatusCode validate(const Gaudi::Interfaces::IParticlePropertySvc *svc) const
validate the item using the service
Gaudi::ParticleID m_pid
the particle PID
Item(const Gaudi::ParticleProperty *pp=0)
the constructor from the particle property
const Gaudi::ParticleProperty * m_pp
the source of properties
std::ostream & fillStream(std::ostream &s) const
the default printout
const std::string & name() const
get the particle name
The simple representation of "simple 1-step" decay (there are no trees!
StatusCode validate(const Gaudi::Interfaces::IParticlePropertySvc *svc) const
validate the decay using the service
Decay & operator+=(const std::string &child)
add the child
std::string toString() const
the conversion to the string
std::ostream & fillStream(std::ostream &s) const
the default printout
Items m_daughters
the daughter particles
const Item & operator()(const unsigned int index) const
get the component by the number
void setDaughters(const Items &daugs)
set the daughters
const Item & mother() const
get the mother(head) of the decay
std::vector< Item > Items
the vector of items (the obvious representation of daughter particles)
const Items & daughters() const
get all daughters
Item m_mother
the head of the decay
void setMother(const Item &mom)
set the mother
The abstract interface to Particle Property Service.
virtual const ParticleProperty * find(const std::string &name) const =0
Retrieve an object by name:
Holds PDG + LHCb extension particle code, following the PDG particle numbering scheme (pdg....
A trivial class to hold information about a single particle properties.
This class is used for returning status codes from appropriate routines.
constexpr static const auto SUCCESS
constexpr static const auto FAILURE