2023-04-09 22:30:59 +08:00
|
|
|
#ifndef GenePrimaryGeneratorAction_hh
|
|
|
|
#define GenePrimaryGeneratorAction_hh 1
|
2023-02-13 14:50:36 +08:00
|
|
|
|
2023-04-09 22:30:59 +08:00
|
|
|
#include "G4VUserPrimaryGeneratorAction.hh"
|
2023-05-08 11:10:33 +08:00
|
|
|
#include "globals.hh"
|
2023-02-13 14:50:36 +08:00
|
|
|
|
|
|
|
class G4ParticleGun;
|
|
|
|
class G4Event;
|
|
|
|
class TH1F;
|
|
|
|
class GenePrimaryGeneratorActionMessenger;
|
|
|
|
|
|
|
|
class GenePrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction {
|
|
|
|
public:
|
|
|
|
GenePrimaryGeneratorAction();
|
|
|
|
~GenePrimaryGeneratorAction();
|
|
|
|
|
|
|
|
void GeneratePrimaries(G4Event* anEvent);
|
|
|
|
void SetBeamEnergy(G4double);
|
|
|
|
|
|
|
|
private:
|
|
|
|
G4ParticleGun* particleGun;
|
|
|
|
G4double mass[4];
|
|
|
|
G4double beta;
|
|
|
|
G4double gamma;
|
|
|
|
G4double t3_cm;
|
|
|
|
G4double t4_cm;
|
|
|
|
G4double p3_cm;
|
|
|
|
G4double p4_cm;
|
|
|
|
|
|
|
|
TH1F* hAng;
|
|
|
|
GenePrimaryGeneratorActionMessenger* pMessenger;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|