29 lines
634 B
C++
29 lines
634 B
C++
#ifndef DESCSS_PrimaryGeneratorAction_h
|
|
#define DESCSS_PrimaryGeneratorAction_h
|
|
|
|
#include "G4GeneralParticleSource.hh"
|
|
#include "G4ParticleGun.hh"
|
|
#include "G4VUserPrimaryGeneratorAction.hh"
|
|
#include "globals.hh"
|
|
|
|
class G4GeneralParticleSource;
|
|
class G4ParticleGun;
|
|
class G4Event;
|
|
|
|
extern G4String particleType;
|
|
|
|
template <typename T>
|
|
class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction {
|
|
public:
|
|
PrimaryGeneratorAction();
|
|
|
|
~PrimaryGeneratorAction();
|
|
virtual void GeneratePrimaries(G4Event*);
|
|
const T* GetParticleGun() const { return fParticleGun; }
|
|
|
|
private:
|
|
T* fParticleGun = nullptr;
|
|
};
|
|
|
|
#endif
|