10 #ifndef GGSSCORINGMANAGER_H_
11 #define GGSSCORINGMANAGER_H_
13 #include "G4VSensitiveDetector.hh"
42 void RegisterSDClass(
const G4String &className, G4VSensitiveDetector *(*sdBuilder)(G4String));
58 void AddSDToLogVol(
const G4String &sdClassName,
const G4String &logVolNameAndParams);
70 void AddSDToLogVol(G4VSensitiveDetector *sd, G4LogicalVolume *logVol);
78 typedef std::map<G4String, G4VSensitiveDetector *(*)(G4String)> SDBuildersMap;
79 SDBuildersMap _buildersMap;
~GGSScoringManager()
Destructor.
static GGSScoringManager & GetInstance()
Singleton getter.
void RegisterSDClass(const G4String &className, G4VSensitiveDetector *(*sdBuilder)(G4String))
Class registration method (class factory approach).
Singleton for handling plugin scoring classes.
Messenger for the GGSScoringManager singleton.
GGSScoringManagerMessenger * GetMessenger()
Getter for messenger.
void AddSDToLogVol(const G4String &sdClassName, const G4String &logVolNameAndParams)
Adds a sensitive detector to a logical volume (class factory approach).