56 std::ostream&
fillStream( std::ostream& s )
const;
73 typedef std::vector<Item>
Items;
118 const Item& operator()(
const unsigned int index )
const;
124 const Item&
operator[](
const unsigned int index )
const {
return ( *
this )( index ); }
127 void setMother(
const Item& mom );
131 void setMother(
const std::string& mom );
135 void setDaughters(
const Items& daugs );
137 void setDaughters(
const std::vector<const Gaudi::ParticleProperty*>& daugs );
139 void setDaughters(
const std::vector<std::string>& daugs );
141 void setDaughters(
const std::vector<Gaudi::ParticleID>& daugs );
152 Decay& operator+=(
const std::string& child );
158 Decay& operator+=(
const Item& child );
164 std::ostream& fillStream( std::ostream& s )
const;
166 std::string toString()
const;
std::ostream & operator<<(std::ostream &s, const Gaudi::Decays::Decay &decay)
the printout operator to the stream
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
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!
void setChildren(const std::vector< std::string > &daugs)
set the daughters
StatusCode validate(const Gaudi::Interfaces::IParticlePropertySvc *svc) const
validate the decay using the service
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
const Items & children() const
get all daughters
std::vector< Item > Items
the vector of items (the obvious representation of daughter particles)
void setChidlren(const std::vector< Gaudi::ParticleID > &daugs)
set the daughters
void setChildren(const std::vector< const Gaudi::ParticleProperty * > &daugs)
set the daughters
void setChildren(const Items &daugs)
set the daughters
size_t nChildren() const
get the number of daughters
size_t nDaughters() const
get the number of daughters
const Items & daughters() const
get all daughters
Item m_mother
the head of the decay
The abstract interface to Particle Property Service.
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.
StatusCode validate(Iterator begin, Iterator end, const Gaudi::Interfaces::IParticlePropertySvc *svc)
validate trees/nodes
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...