]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TGeant4/TG4ModularPhysicsList.h
stdlib.h included instead of cstdlib (needed on Alpha)
[u/mrichter/AliRoot.git] / TGeant4 / TG4ModularPhysicsList.h
1 // $Id$
2 // Category: physics
3 //
4 // Author: I. Hrivnacova
5 //
6 // Class TG4ModularPhysicsList
7 // ---------------------------
8 // The modular physics list.
9 // Creates all standard particles.
10 // The physics processes have to be created
11 // using the G4VPhysicsCreator derived classes
12 // and registered to this physics list.
13 // Only G4Decay is created directly in this modular
14 // physics list.
15
16 #ifndef TG4_MODULAR_PHYSICS_LIST_H
17 #define TG4_MODULAR_PHYSICS_LIST_H
18
19 #include <G4VModularPhysicsList.hh>
20 #include <globals.hh>
21
22 class TG4ModularPhysicsList: public G4VModularPhysicsList
23 {
24   public:
25     TG4ModularPhysicsList();
26     // --> protected
27     // TG4ModularPhysicsList(const TG4ModularPhysicsList& right);
28     virtual ~TG4ModularPhysicsList();
29   
30     // methods
31     virtual void SetCuts();
32     void SetProcessActivation();
33     void PrintAllProcesses() const;
34     void DumpAllProcesses() const;
35     
36   protected:
37     TG4ModularPhysicsList(const TG4ModularPhysicsList& right);
38
39     // operators
40     TG4ModularPhysicsList& operator=(const TG4ModularPhysicsList& right);
41
42     // methods
43     virtual void ConstructParticle();
44     virtual void ConstructProcess();
45
46   private:
47     // methods
48     void SetProcessActivation(G4ProcessManager* processManager,
49                               G4int processId, G4bool activation);
50
51     // static data members
52     static const G4double  fgkDefaultCutValue;
53 };
54
55 #endif //TG4_MODULAR_PHYSICS_LIST_H
56