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 }
1.5.4