00001 // 00002 // $Id: PrimaryGeneratorAction.hh 166 2008-09-16 10:39:56Z maire $ 00003 // 00004 // PrimaryGeneratorAction.hh 00005 // 00006 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 00007 00008 #ifndef PrimaryGeneratorAction_h 00009 #define PrimaryGeneratorAction_h 1 00010 00011 #include "G4VUserPrimaryGeneratorAction.hh" 00012 #include "G4ParticleGun.hh" 00013 #include "globals.hh" 00014 00015 class G4Event; 00016 class DetectorConstruction; 00017 class PrimaryGeneratorMessenger; 00018 00019 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 00020 00021 class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction 00022 { 00023 public: 00024 PrimaryGeneratorAction(DetectorConstruction*); 00025 ~PrimaryGeneratorAction(); 00026 00027 public: 00028 void GeneratePrimaries(G4Event*); 00029 void SetRndmFlag (G4String flag) { m_rndmFlag = flag;}; 00030 00031 G4ParticleGun* GetParticleGun() {return m_particleGun;} 00032 00033 private: 00034 G4ParticleGun* m_particleGun; 00035 DetectorConstruction* m_detector; 00036 PrimaryGeneratorMessenger* m_gunMessenger; 00037 G4String m_rndmFlag; 00038 }; 00039 00040 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 00041 00042 #endif 00043 00044