///////////////////////////////////////////////////////////////////////// // G4Tutorial: // // PhysicsEMPhotonPenelope.hh // // Assembling electromagnetic physics processes for photons. // // The considered processes are G4PenelopePhotoElectric, G4PenelopeCompton // G4PenelopeGammaConversion and G4PenelopeRayleigh // ///////////////////////////////////////////////////////////////////////// #ifndef PHYSICSEMPHOTONPENELOPE_HH #define PHYSICSEMPHOTONPENELOPE_HH #include "G4VPhysicsConstructor.hh" #include "globals.hh" // G4VPhysicsConstructor is the abstract base class for physics constructors: class PhysicsEMPhotonPenelope : public G4VPhysicsConstructor { public: PhysicsEMPhotonPenelope(const G4String& name = "Photon-Penelope"); virtual ~PhysicsEMPhotonPenelope(); // G4VPhysicsConstructor has two pure virtual methods which must be // implemented by the user: ConstructParticle and ConstructProcess. // Since only physics processes are dealt with here, ConstructParticle // is irrelevant and performs no action. ConstructProcess is used to // instantiate all physics processes relevant for the considered particle // and type of interaction. void ConstructParticle() { }; void ConstructProcess(); }; #endif // PHYSICSEMPHOTONPENELOPE_HH