#include "PrimaryGeneratorAction.h" #include "G4ParticleTable.hh" #include "G4SystemOfUnits.hh" PrimaryGeneratorAction::PrimaryGeneratorAction() { auto table = G4ParticleTable::GetParticleTable(); fParticleGun = new G4ParticleGun(1); fParticleGun->SetParticleDefinition(table->FindParticle("gamma")); fParticleGun->SetParticlePosition(G4ThreeVector(0, 0, 555. / 2 * mm)); fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0, 0, -1)); fParticleGun->SetParticleEnergy(1 * MeV); } PrimaryGeneratorAction::~PrimaryGeneratorAction() { delete fParticleGun; } void PrimaryGeneratorAction::GeneratePrimaries(G4Event* e) { fParticleGun->GeneratePrimaryVertex(e); }