1 #ifndef _tls_Geant4Manager_h_
2 #define _tls_Geant4Manager_h_
4 #include <utl/Singleton.h>
5 #include <tls/Geant4Customization.h>
6 #include <tls/GlobalPhysicsList.h>
11 class G4VUserDetectorConstruction;
12 class G4VUserPhysicsList;
17 class G4VPhysicsListCustomization;
G4VUserPhysicsList to aggregate physics lists to be used by multiple Geant4 modules in one offline se...
G4VisManager * fVisManager
class that handles multiple Geant4 runs in one offline session
Geant4Manager & operator=(const Geant4Manager &)
void Reset()
Undo the customizations introduced by the current configuration.
void AddCustomization(Geant4Customization &custom)
unsigned int fClosedModules
void AddVisManager(G4VisManager *visManager)
Add a visualization manager. Only one visualization manager is accepted.
GlobalPhysicsList * fMasterPhysicsList
G4RunManager * fRunManager
void NotifyDelete()
Book-keeping method. Call this to let the manager know your module does not need Geant4 anymore...
std::map< std::string, Geant4Customization > fCustomizations
Data structure to hold the different Geant4 global objects required to run a single module...
void SetVerbosity(int verbosity)
std::string fCurrentCustomization
unsigned int fVerboseLevel
void Customize(const std::string &name)
void SetDefaultPhysicsList(G4VUserPhysicsList *physicsList)
Set the default physics list. This will throw an exception if the run manager has been initialized al...
G4RunManager * GetRunManager()
Curiously Recurring Template Pattern (CRTP) for Meyers singleton.