HepMC Reference Documentation

HepMC

HepMC::GenVertex::particle_iterator Class Reference

particle iterator More...

#include <GenVertex.h>

List of all members.

Public Member Functions

 particle_iterator ()
 particle_iterator (GenVertex &vertex_root, IteratorRange range)
 used to set limits on the iteration
 particle_iterator (const particle_iterator &)
 copy
virtual ~particle_iterator ()
particle_iteratoroperator= (const particle_iterator &)
 make a copy
GenParticleoperator * (void) const
 return a pointer to a particle
particle_iteratoroperator++ (void)
 Pre-fix increment.
particle_iterator operator++ (int)
 Post-fix increment.
bool operator== (const particle_iterator &) const
 equality
bool operator!= (const particle_iterator &) const
 inequality

Protected Member Functions

GenParticleadvance_to_first_ ()
 "first" particle


Detailed Description

particle iterator

Iterates over all particles connected via a graph. by iterating through all vertices in the m_range. For each vertex it returns orphaned parent particles (i.e. parents without production vertices) then children ... in this way each particle is associated to exactly one vertex and so it is returned exactly once. Is made friend so that it can access protected edge iterator

Examples:

example_UsingIterators.cc.

Definition at line 306 of file GenVertex.h.


Constructor & Destructor Documentation

HepMC::GenVertex::particle_iterator::particle_iterator (  ) 

Definition at line 826 of file GenVertex.cc.

HepMC::GenVertex::particle_iterator::particle_iterator ( GenVertex vertex_root,
IteratorRange  range 
)

used to set limits on the iteration

Definition at line 828 of file GenVertex.cc.

References advance_to_first_(), HepMC::family, and HepMC::GenVertex::vertex_iterator::range().

HepMC::GenVertex::particle_iterator::particle_iterator ( const particle_iterator  ) 

copy

Definition at line 842 of file GenVertex.cc.

HepMC::GenVertex::particle_iterator::~particle_iterator (  )  [virtual]

Definition at line 847 of file GenVertex.cc.


Member Function Documentation

GenVertex::particle_iterator & HepMC::GenVertex::particle_iterator::operator= ( const particle_iterator  ) 

make a copy

Definition at line 850 of file GenVertex.cc.

References m_edge, and m_vertex_iterator.

GenParticle * HepMC::GenVertex::particle_iterator::operator * ( void   )  const

return a pointer to a particle

Definition at line 857 of file GenVertex.cc.

GenVertex::particle_iterator & HepMC::GenVertex::particle_iterator::operator++ ( void   ) 

Pre-fix increment.

Definition at line 862 of file GenVertex.cc.

References advance_to_first_(), and HepMC::GenVertex::vertex_iterator::range().

GenVertex::particle_iterator HepMC::GenVertex::particle_iterator::operator++ ( int   ) 

Post-fix increment.

Definition at line 881 of file GenVertex.cc.

bool HepMC::GenVertex::particle_iterator::operator== ( const particle_iterator  )  const [inline]

equality

Definition at line 479 of file GenVertex.h.

bool HepMC::GenVertex::particle_iterator::operator!= ( const particle_iterator  )  const [inline]

inequality

Definition at line 484 of file GenVertex.h.

GenParticle * HepMC::GenVertex::particle_iterator::advance_to_first_ (  )  [protected]

"first" particle

if the current edge is not a suitable return value ( because it is a parent of the vertex root that itself belongs to a different vertex ) it advances to the first suitable return value

Definition at line 888 of file GenVertex.cc.

References HepMC::GenVertex::edge_iterator::is_parent(), HepMC::GenVertex::vertex_iterator::range(), and HepMC::relatives.

Referenced by operator++(), and particle_iterator().


The documentation for this class was generated from the following files:
Generated on Wed Mar 12 13:08:11 2008 for HepMC by  doxygen 1.5.1-3