GlobalPhysicsList.h
Go to the documentation of this file.
1 #ifndef _tls_GlobalPhysicsList_h_
2 #define _tls_GlobalPhysicsList_h_
3 
4 #include <G4VUserPhysicsList.hh>
5 #include <vector>
6 
7 namespace tls {
32  class GlobalPhysicsList: public G4VUserPhysicsList {
33  public:
36 
37  // "SetCuts" method sets a cut value for all particle types
38  // in the particle table
39  virtual void SetCuts();
40  // This method will be invoked in the Construct() method.
41  // Users do not to use it.
42  virtual void ConstructParticle();
43 
44  // This method will be invoked in the Construct() method.
45  // Users do not to use it.
46  virtual void ConstructProcess();
47 
48  // This is the method users are supposed to use.
49  void RegisterPhysics(const G4String& name, G4VUserPhysicsList* userList);
50 
51  const G4VUserPhysicsList* GetPhysics(const G4String& name) const;
52 
53  void SetVerboseLevel(bool verbosity);
54 
55  private:
56 
57  // easy way to keep the order of insertion
58  std::vector<G4String> fPhysicsVectorNames;
59  std::vector<G4VUserPhysicsList*> fPhysicsVector;
60 
61  };
62 
63 } // tls
64 
65 
66 
67 #endif // _tls_GlobalPhysicsList_h_
G4VUserPhysicsList to aggregate physics lists to be used by multiple Geant4 modules in one offline se...
std::vector< G4VUserPhysicsList * > fPhysicsVector
void RegisterPhysics(const G4String &name, G4VUserPhysicsList *userList)
std::vector< G4String > fPhysicsVectorNames
void SetVerboseLevel(bool verbosity)
virtual void ConstructParticle()
virtual void ConstructProcess()
const G4VUserPhysicsList * GetPhysics(const G4String &name) const

, generated on Tue Sep 26 2023.