]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TGeant4/TG4ModularPhysicsList.h
moved from geometry to digits+hits; added comment lines separating methods
[u/mrichter/AliRoot.git] / TGeant4 / TG4ModularPhysicsList.h
1 // $Id$
2 // Category: physics
3 //
4 // The modular physics list.
5 // Creates all standard particles.
6 // The physics processes have to be created
7 // using the G4VPhysicsCreator derived classes
8 // and registered to this physics list.
9 // Only G4Decay is created directly in this modular
10 // physics list.
11
12 #ifndef TG4_MODULAR_PHYSICS_LIST_H
13 #define TG4_MODULAR_PHYSICS_LIST_H
14
15 #include <G4VModularPhysicsList.hh>
16 #include <globals.hh>
17
18 class TG4ExtDecayer;
19
20 class G4VProcess;
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     
35   protected:
36     TG4ModularPhysicsList(const TG4ModularPhysicsList& right);
37
38     // operators
39     TG4ModularPhysicsList& operator=(const TG4ModularPhysicsList& right);
40
41     // methods
42     virtual void ConstructParticle();
43     virtual void ConstructProcess();
44
45          // construct all particles in each category
46     void ConstructAllBosons();
47     void ConstructAllLeptons();
48     void ConstructAllMesons();
49     void ConstructAllBaryons();
50     void ConstructAllIons();
51     void ConstructAllShortLiveds();
52     
53         // construct general processes
54     void ConstructGeneral();    
55
56   private:
57     TG4ExtDecayer*  fExtDecayer; //external decayer
58 };
59
60 #endif //TG4_MODULAR_PHYSICS_LIST_H
61