LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
PhysicsList.h
Go to the documentation of this file.
1 // \modified by: drivera@fnal.gov
7 // \changes: removed QGSP_BERT.h include because it is not pertinent
8 // here nor where this header is included
9 //
48 
49 #ifndef LArG4_PhysicsList_h
50 #define LArG4_PhysicsList_h
51 
52 #include "Geant4/G4String.hh"
53 #include "Geant4/G4VModularPhysicsList.hh"
55 class G4VPhysicsConstructor;
56 
57 namespace larg4 {
58 
59  // Under normal circumstances, there is no need to inherit a class
60  // from G4VModularPhysicsList. It's necessary here because we have
61  // to modify one of its routines.
62  class ModularPhysicsList : public G4VModularPhysicsList {
63  public:
64  // This is the one method we're overridding to include the code
65  // for the parallel geometry.
66  virtual void ConstructProcess();
67 
68  // Non-virtual methods in G4VModularPhysicsList. Just call the
69  // method with the same name in G4VModularPhysicsList.
70  void RegisterPhysics(G4VPhysicsConstructor* g) { G4VModularPhysicsList::RegisterPhysics(g); }
71  const G4VPhysicsConstructor* GetPhysics(G4int index) const
72  {
73  return G4VModularPhysicsList::GetPhysics(index);
74  }
75  const G4VPhysicsConstructor* GetPhysics(const G4String& name) const
76  {
77  return G4VModularPhysicsList::GetPhysics(name);
78  }
79  };
80 
84 
85 } // namespace larg4
86 
87 #endif // LArG4_PhysicsList_h
Geant4 interface.
void RegisterPhysics(G4VPhysicsConstructor *g)
Definition: PhysicsList.h:70
const G4VPhysicsConstructor * GetPhysics(const G4String &name) const
Definition: PhysicsList.h:75
virtual void ConstructProcess()
Definition: PhysicsList.cxx:37
const G4VPhysicsConstructor * GetPhysics(G4int index) const
Definition: PhysicsList.h:71