44    if ( p->end_vertex() ) p->end_vertex()->remove_particle_in(p);
 
   46    p->m_end_vertex = shared_from_this();
 
 
   60    if ( p->production_vertex() ) p->production_vertex()->remove_particle_out(p);
 
   62    p->m_production_vertex = shared_from_this();
 
 
   70    p->m_end_vertex.reset();
 
 
   78    p->m_production_vertex.reset();
 
 
   88    return *(
reinterpret_cast<const std::vector<ConstGenParticlePtr>*
>(&
m_particles_in));
 
 
   92    return *(
reinterpret_cast<const std::vector<ConstGenParticlePtr>*
>(&
m_particles_out));
 
 
  103        if (!cycles || cycles->value() == 0)
 
  106                ConstGenVertexPtr v = p->production_vertex();
 
  107                if (v) 
return v->position();
 
 
  116    m_data.position = new_pos;
 
 
Definition of class Attribute, class IntAttribute and class StringAttribute.
Definition of class GenEvent.
Definition of class GenParticle.
Definition of class GenVertex.
Definition of class Setup.
static const FourVector & ZERO_VECTOR()
Static null FourVector = (0,0,0,0)
std::shared_ptr< T > attribute(const std::string &name, const int &id=0) const
Get attribute of type T.
std::vector< std::string > attribute_names(const int &id=0) const
Get list of attribute names.
const FourVector & event_pos() const
Vertex representing the overall event position.
void add_attribute(const std::string &name, const std::shared_ptr< Attribute > &att, const int &id=0)
void remove_attribute(const std::string &name, const int &id=0)
Remove attribute.
std::string attribute_as_string(const std::string &name, const int &id=0) const
Get attribute of any type as string.
GenVertex(const FourVector &position=FourVector::ZERO_VECTOR())
Default constructor.
void remove_particle_out(GenParticlePtr p)
Remove outgoing particle.
GenVertexData m_data
Vertex data.
const std::vector< GenParticlePtr > & particles_out()
Get list of outgoing particles.
void remove_particle_in(GenParticlePtr p)
Remove incoming particle.
std::vector< GenParticlePtr > m_particles_in
Incoming particle list.
GenEvent * m_event
Parent event.
void add_particle_in(GenParticlePtr p)
Add incoming particle.
void remove_attribute(const std::string &name)
Remove attribute.
void set_position(const FourVector &new_pos)
Set vertex position.
std::vector< GenParticlePtr > m_particles_out
Outgoing particle list.
bool add_attribute(const std::string &name, std::shared_ptr< Attribute > att)
Add event attribute to this vertex.
std::vector< std::string > attribute_names() const
Get list of names of attributes assigned to this particle.
void set_id(int id)
set the vertex identifier
const FourVector & position() const
Get vertex position.
GenEvent * parent_event()
Get parent event.
bool has_set_position() const
Check if position of this vertex is set.
void add_particle_out(GenParticlePtr p)
Add outgoing particle.
const std::vector< GenParticlePtr > & particles_in()
Get list of incoming particles.
std::string attribute_as_string(const std::string &name) const
Get attribute of any type as string.
Attribute that holds an Integer implemented as an int.
Stores serializable vertex information.