]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TGeant4/TG4PhysicsConstructorEM.h
Avoid errors in the VirtuaMC version of AliRoot
[u/mrichter/AliRoot.git] / TGeant4 / TG4PhysicsConstructorEM.h
1 // $Id$
2 // Category: physics
3 //
4 // Author: I. Hrivnacova
5 //
6 // Class TG4PhysicsConstructorEM
7 // -----------------------------
8 // Constructor of electromagnetic physics.
9 // According to the corresponding part of:
10 // ExN04PhysicsList.hh, GEANT4 tag Name: geant4-03-02
11
12 #ifndef TG4_PHYSICS_CONSTRUCTOR_EM_H
13 #define TG4_PHYSICS_CONSTRUCTOR_EM_H
14
15 #include "TG4VPhysicsConstructor.h"
16
17 #include <G4PhotoElectricEffect.hh>
18 #include <G4ComptonScattering.hh>
19 #include <G4GammaConversion.hh>
20 #include <G4MultipleScattering.hh>
21 #include <G4eIonisation.hh>
22 #include <G4eBremsstrahlung.hh>
23 #include <G4eplusAnnihilation.hh>
24 #include <globals.hh>
25
26 class TG4PhysicsConstructorEM: public TG4VPhysicsConstructor
27 {
28   public:
29     TG4PhysicsConstructorEM(const G4String& name = "EM"); 
30     TG4PhysicsConstructorEM(G4int verboseLevel, 
31                             const G4String& name = "EM");
32     virtual ~TG4PhysicsConstructorEM();
33
34   protected:
35     // methods
36           // construct particle and physics
37     virtual void ConstructParticle();
38     virtual void ConstructProcess();
39
40     // data members
41             // Gamma physics
42     G4PhotoElectricEffect fPhotoEffect;               //gamma photoeffect
43     G4ComptonScattering   fComptonEffect;             //Compton scattering
44     G4GammaConversion     fPairProduction;            //gamma pair production
45      
46             // Electron physics
47     G4MultipleScattering  fElectronMultipleScattering;//e- multiple scattering
48     G4eIonisation         fElectronIonisation;        //e- ionization 
49     G4eBremsstrahlung     fElectronBremsStrahlung;    //e- Bremsstrahlung
50   
51             //Positron physics
52     G4MultipleScattering  fPositronMultipleScattering;//e+ multiple scattering
53     G4eIonisation         fPositronIonisation;        //e+ ionisation
54     G4eBremsstrahlung     fPositronBremsStrahlung;    //e+ Bremsstrahlung
55     G4eplusAnnihilation   fAnnihilation;              //e+ annihilation
56     
57   private:
58     // methods
59     void ConstructProcessForGamma();    
60     void ConstructProcessForElectron();    
61     void ConstructProcessForPositron();    
62 };
63
64 #endif //TG4_PHYSICS_CONSTRUCTOR_H
65