Interface class for accessing a list of particles from a shower file. More...
#include <VShowerFileParticleIterator.h>
Public Member Functions | |
virtual Particle * | GetOneParticle (const CoordinateSystemPtr &cs)=0 |
Member function to fetch the next particle. More... | |
virtual void | Rewind ()=0 |
Rewind the particle list in the shower file to the beginning. More... | |
VShowerFileParticleIterator () | |
virtual | ~VShowerFileParticleIterator () |
Interface class for accessing a list of particles from a shower file.
"utl/VShowerFileParticleIterator.h"
This class defines the interface by which the ShowerParticleIterator fetches the particles of the ground particles list from the output of an air-shower simulation.
Definition at line 29 of file VShowerFileParticleIterator.h.
|
inline |
Definition at line 31 of file VShowerFileParticleIterator.h.
|
inlinevirtual |
Definition at line 33 of file VShowerFileParticleIterator.h.
|
pure virtual |
Member function to fetch the next particle.
This method has to return a pointer to the current particle in the shower file. Then it steps the cursor in the shower file forward. This corresponds to the way a typical interface library for Aires or CORSIKA provides access to the particles on the ground.
If no more particles are available, return a null pointer.
Call Rewind() before calling this function. This puts the underlying library into a defined state.
It is the responsibility of the concrete implementation to react appropriately to illegal calls to GetOneParticle()
Implemented in io::CorsikaShowerFileParticleIterator, io::ArtificialShowerFileParticleIterator, io::AiresShowerFileParticleIterator, io::SenecaShowerFileParticleIterator, ShowerInventorNS::ShowerInventorParticleIterator, and testShowerFileParticleIterator.
Referenced by utl::ShowerParticleIterator::operator++(), and utl::ShowerParticleIterator::ShowerParticleIterator().
|
pure virtual |
Rewind the particle list in the shower file to the beginning.
After a call to this function, calls to GetOneParticle() start returning particles starting from the first particle recorded for the shower.
Implemented in io::CorsikaShowerFileParticleIterator, io::ArtificialShowerFileParticleIterator, io::AiresShowerFileParticleIterator, io::SenecaShowerFileParticleIterator, ShowerInventorNS::ShowerInventorParticleIterator, and testShowerFileParticleIterator.
Referenced by utl::ShowerParticleIterator::ShowerParticleIterator().