4 #include <utl/Particle.h>
5 #include <utl/AugerUnits.h>
8 #include <G4ParticleGun.hh>
9 #include <G4ParticleDefinition.hh>
10 #include <G4ParticleTable.hh>
11 #include <G4SystemOfUnits.hh>
16 namespace G4StationSimulatorOG {
19 fParticleGun(new G4ParticleGun(1)),
20 fParticleTable(G4ParticleTable::GetParticleTable())
36 std::ostringstream msg;
37 msg <<
"Undefined particle type: " << currentParticle.
GetName();
void GeneratePrimaries(G4Event *TheEvent)
const TimeInterval & GetTime() const
Arrival time delay at the ground.
Detector description interface for Station-related data.
utl::Particle & GetParticle() const
std::string GetName() const
string with particle name
Describes a particle for Simulation.
const sdet::Station & GetDetectorStation() const
utl::CoordinateSystemPtr GetLocalCoordinateSystem() const
Get the Auger reference system centered on the tank.
G4StationPrimaryGenerator()
#define WARNING(message)
Macro for logging warning messages.
G4ParticleTable * fParticleTable
double GetInterval() const
Get the time interval as a double (in Auger base units)
double GetKineticEnergy() const
Get kinetic energy of the particle.
G4ThreeVector ToG4Vector(const V &v, const utl::CoordinateSystemPtr &cs, const double unitConversion)
const Point & GetPosition() const
Position of the particle.
~G4StationPrimaryGenerator()
const Vector & GetDirection() const
Unit vector giving particle direction.
G4ParticleGun * fParticleGun