18 #ifndef G4BASE_G4HELPER_H 19 #define G4BASE_G4HELPER_H 30 #include "Geant4/G4RunManager.hh" 31 #include "Geant4/G4VUserParallelWorld.hh" 36 namespace simb{
class MCTruth; }
37 namespace rndm {
class ParticleList; }
43 class ParticleListAction;
44 class ConvertPrimaryToGeant4;
53 G4Helper(std::string
const& g4macropath,
54 std::string
const& g4physicslist =
"QGSP_BERT",
55 std::string
const& gdmlFile =
"");
60 void SetParallelWorlds(std::vector<G4VUserParallelWorld*> pworlds);
65 void SetVolumeStepLimit(std::string
const& volumeName,
69 inline void SetOverlapCheck(
bool check);
70 inline void SetValidateGDMLSchema(
bool validate);
77 void ConstructDetector(std::string
const& gdmlFile);
92 bool G4Run(std::vector<const simb::MCTruth*> &primaries);
104 void SetPhysicsList(std::string physicsList);
110 std::string fG4PhysListName;
133 #endif // G4BASE_G4HELPER_H
bool fValidateGDMLSchema
Have G4GDML validate geometry schema?
std::vector< G4VUserParallelWorld * > fParallelWorlds
list of parallel worlds
void SetValidateGDMLSchema(bool validate)
G4RunManager * GetRunManager()
void SetOverlapCheck(bool check)
std::string fGDMLFile
Name of the gdml file containing the detector Geometry.
Convert MCTruth to G4Event; Geant4 event generator.
bool fCheckOverlaps
Have G4GDML check for overlaps?
basic interface to Geant4 for ART-based software
std::string fG4MacroPath
to be executed before main MC processing.
G4RunManager * fRunManager
Geant4's run manager.
Event generator information.
bool fUseStepLimits
Set in SetVolumeStepLimit.
ConvertMCTruthToG4 * fConvertMCTruth
Geant4 event generator.
G4UImanager * fUIManager
Geant4's user-interface manager.