00001 // 00002 // $Id: PrimaryGeneratorAction.hh 135 2008-07-03 14:48:12Z jacquem $ 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 00030 G4ParticleGun* GetParticleGun() {return m_particleGun;} 00031 00032 private: 00033 G4ParticleGun* m_particleGun; 00034 DetectorConstruction* m_detector; 00035 PrimaryGeneratorMessenger* m_gunMessenger; 00036 G4String m_rndmFlag; 00037 }; 00038 00039 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 00040 00041 #endif 00042 00043