ParticleGunEventSource.cc

Go to the documentation of this file.
00001 // $Header: /cvs/lcd/slic/src/ParticleGunEventSource.cc,v 1.4 2007/04/27 01:54:35 jeremy Exp $
00002 #include "ParticleGunEventSource.hh"
00003 
00004 // geant4
00005 #include "G4ParticleGun.hh"
00006 
00007 namespace slic
00008 {
00009 
00010   ParticleGunEventSource::ParticleGunEventSource()
00011     : EventSource( "ParticleGunEventSource" )
00012   {
00013     m_generator = new G4ParticleGun();
00014   }
00015 
00016   ParticleGunEventSource::~ParticleGunEventSource()
00017   {
00018     delete m_generator;
00019   }
00020 
00021   void ParticleGunEventSource::generate(G4Event* evt)
00022   {
00023     m_generator->GeneratePrimaryVertex(evt);
00024   }
00025 
00026   void ParticleGunEventSource::dumpCurrentEvent()
00027   {
00028     log() << LOG::okay << "Dumping ParticleGun Event info..." << LOG::done;
00029 
00030     G4ParticleDefinition* pdef = m_generator->GetParticleDefinition();
00031 
00032     log() << LOG::okay << "particle: " << pdef->GetParticleName() << LOG::done;
00033     log() << LOG::okay << "time: " << m_generator->GetParticleTime () << LOG::done;
00034     log() << LOG::okay << "pos: " << m_generator->GetParticlePosition () << LOG::done;
00035     log() << LOG::okay << "mom: " << m_generator->GetParticleMomentumDirection() << LOG::done;
00036     log() << LOG::okay << "E: " << m_generator->GetParticleEnergy() << LOG::done;
00037     log() << LOG::okay << LOG::done;
00038   }
00039 
00040   G4ParticleGun* ParticleGunEventSource::getParticleGun()
00041   {
00042     return m_generator;
00043   }
00044 }

Generated on Thu Nov 15 15:24:16 2007 for Simulator for the Linear Collider by  doxygen 1.5.4