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