| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

HepMC::GenVertex::particle_iterator Class Reference

Iterates over all particles connected via a graph. More...

#include <GenVertex.h>

Collaboration diagram for HepMC::GenVertex::particle_iterator:

[legend]
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

Private Attributes

vertex_iterator m_vertex_iterator
edge_iterator m_edge

Detailed Description

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

Definition at line 306 of file GenVertex.h.


Constructor & Destructor Documentation

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

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

used to set limits on the iteration

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

copy

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


Member Function Documentation

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

make a copy

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

return a pointer to a particle

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

Pre-fix increment.

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

Post-fix increment.

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

equality

Definition at line 479 of file GenVertex.h.

00480                                            {
00481         return **this == *a; 
00482     }

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

inequality

Definition at line 484 of file GenVertex.h.

00485                                            {
00486         return !(**this == *a); 
00487     }

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

"first" particle


Member Data Documentation

vertex_iterator HepMC::GenVertex::particle_iterator::m_vertex_iterator [private]

Definition at line 330 of file GenVertex.h.

edge_iterator HepMC::GenVertex::particle_iterator::m_edge [private]

Definition at line 331 of file GenVertex.h.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 19:56:44 2011 for HepMC by doxygen 1.4.7