diff --git a/CODE/PrimaryGeneratorAction.hh b/CODE/PrimaryGeneratorAction.hh new file mode 100644 index 0000000000000000000000000000000000000000..487a145cd913fd5469db6cdc22dee0487aefc4a9 --- /dev/null +++ b/CODE/PrimaryGeneratorAction.hh @@ -0,0 +1,78 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file /include/PrimaryGeneratorAction.hh +/// \brief Definition of the PrimaryGeneratorAction class +// +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef PrimaryGeneratorAction_h +#define PrimaryGeneratorAction_h 1 + +#include "G4VUserPrimaryGeneratorAction.hh" +#include "globals.hh" +#include "G4ParticleGun.hh" + +#include "PrimarySpectrum.hh" + +class G4ParticleGun; +class G4Event; +class PrimaryGeneratorMessenger; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction +{ + public: + PrimaryGeneratorAction(); + virtual ~PrimaryGeneratorAction(); + + public: + virtual void GeneratePrimaries(G4Event*); + const G4ParticleGun* GetParticleGun() const + { + return fParticleGun; + } + void SetOptPhotonPolar(); + void SetOptPhotonPolar(G4double); + + private: + G4double enerPart; + G4ParticleGun* fParticleGun; + PrimarySpectrum parPosDir; + PrimaryGeneratorMessenger* fGunMessenger; + + + + + +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif /*PrimaryGeneratorAction_h*/