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
12 #ifndef TG4_MODULAR_PHYSICS_LIST_H
13 #define TG4_MODULAR_PHYSICS_LIST_H
15 #include <G4VModularPhysicsList.hh>
22 class TG4ModularPhysicsList: public G4VModularPhysicsList
25 TG4ModularPhysicsList();
27 // TG4ModularPhysicsList(const TG4ModularPhysicsList& right);
28 virtual ~TG4ModularPhysicsList();
31 virtual void SetCuts();
32 void SetProcessActivation();
33 void PrintAllProcesses() const;
36 TG4ModularPhysicsList(const TG4ModularPhysicsList& right);
39 TG4ModularPhysicsList& operator=(const TG4ModularPhysicsList& right);
42 virtual void ConstructParticle();
43 virtual void ConstructProcess();
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();
53 // construct general processes
54 void ConstructGeneral();
57 TG4ExtDecayer* fExtDecayer;
60 #endif //TG4_MODULAR_PHYSICS_LIST_H