1 #ifndef _ShowerInventor_h_
2 #define _ShowerInventor_h_
4 #include <fwk/VModule.h>
7 #include <utl/VShowerFileParticleIterator.h>
8 #include <utl/Particle.h>
10 #include <utl/RandomEngine.h>
11 #include <utl/VRandomSampler.h>
12 #include <utl/AugerCoordinateSystem.h>
32 namespace ShowerInventorNS {
std::vector< double > RandomCacheContainer
utl::VRandomSampler * GetSampler(const utl::Branch &b)
double Plane(const utl::Point &point, const utl::Vector &normal, const utl::Photon &photonIn, utl::Photon &photonOut)
fwk::VModule::ResultFlag Finish()
Finish: invoked at end of the run (NOT end of the event)
utl::Particle * fCurrentParticle
REGISTER_MODULE("ShowerInventorNEU", ShowerInventor)
utl::Point * fCoreLocation
utl::Particle * GetOneParticle()
unsigned int fCurrentDistIndex
Describes a particle for Simulation.
RandomCacheContainer * timeRandomCache
fwk::VModule::ResultFlag Run(evt::Event &event)
Run: invoked once per event.
utl::VRandomSampler * timeDistro
unsigned int fRandomCacheMaxSize
utl::CoordinateSystemPtr fShowerLocalCS
ParticleDistInfo fCurrentPDI
unsigned int GetNumRequestedParticles() const
unsigned int fCurrentZenithIndex
unsigned int numGeneratedParticles
boost::shared_ptr< const CoordinateTransformer > CoordinateSystemPtr
Shared pointer for coordinate systems.
Class representing a document branch.
Class describing a Plane object.
std::string fDiagnosticsFileName
utl::VRandomSampler * radialDistro
unsigned int fTotalNumRequestedParticles
utl::RandomEngine::RandomEngineType * fRandomEngine
utl::VRandomSampler * weightDistro
Iterator that generates particles "on-the-fly" . This uses the machinery in ShowerInventor to fetch p...
unsigned int cachePosition
std::vector< ParticleDistInfo > fParticleDistros
unsigned int numRequestedParticles
utl::CoordinateSystemPtr fShowerCS
ResultFlag
Flag returned by module methods to the RunController.
TH2 * fStationPosGroundCS
utl::Plane * fGroundPlane
virtual ~ShowerInventor()
RandomCacheContainer * radiusRandomCache
evt::Event * fCurrentEvent
utl::VRandomSampler * azimuthDistro
CLHEP::HepRandomEngine RandomEngineType
std::map< int, DiagnosticHistos > fDiagnosticHistos
fwk::VModule::ResultFlag Init()
Initialize: invoked at beginning of run (NOT beginning of event)
Generate hypothetical particle distributions in the shower plane.
std::vector< double > fZeniths
RandomCacheContainer * weightRandomCache
utl::CoordinateSystemPtr GetExternalCS() const
Class to shoot random numbers given by a user-defined distribution function.
RandomCacheContainer * azimuthRandomCache
ShowerInventorParticleIterator * fFileIterator