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, and testHepMCIteration.cc.in.

Definition at line 323 of file GenVertex.h.


Constructor & Destructor Documentation

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

Definition at line 838 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 840 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 854 of file GenVertex.cc.

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

Definition at line 859 of file GenVertex.cc.


Member Function Documentation

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 900 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().

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

return a pointer to a particle

Definition at line 869 of file GenVertex.cc.

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

inequality

Definition at line 504 of file GenVertex.h.

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

Post-fix increment.

Definition at line 893 of file GenVertex.cc.

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

Pre-fix increment.

Definition at line 874 of file GenVertex.cc.

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

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

make a copy

Definition at line 862 of file GenVertex.cc.

References m_edge, and m_vertex_iterator.

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

equality

Definition at line 499 of file GenVertex.h.


The documentation for this class was generated from the following files:
Generated on Thu Jan 7 13:10:18 2010 for HepMC by  doxygen 1.4.7