Class RMGRunAction¶
Defined in File RMGRunAction.hh
Nested Relationships¶
Nested Types¶
Inheritance Relationships¶
Base Type¶
public G4UserRunAction
Class Documentation¶
-
class RMGRunAction : public G4UserRunAction¶
Per-thread run action managing output files, ntuples and output schemes.
Holds the list of RMGVOutputScheme instances active on this thread, opens and post-processes the per-worker output file (writing to a temporary path first and moving it into place at end of run), and initializes the Geant4 analysis manager.
Public Functions
-
RMGRunAction(bool persistency = false)¶
Construct a run action with no primary generator hook-up.
-
RMGRunAction(RMGMasterGenerator*, bool persistency = false)¶
Construct a run action aware of the primary generator.
-
~RMGRunAction() = default¶
-
RMGRunAction(RMGRunAction const&) = delete¶
-
RMGRunAction &operator=(RMGRunAction const&) = delete¶
-
RMGRunAction(RMGRunAction&&) = delete¶
-
RMGRunAction &operator=(RMGRunAction&&) = delete¶
-
void SetupAnalysisManager()¶
Configure the Geant4 analysis manager and register all output ntuples.
subsequent calls are no-ops once the analysis manager is initialized for the current thread.
-
void BeginOfRunAction(const G4Run*) override¶
Open the output file, notify schemes, and record the run start time.
-
void EndOfRunAction(const G4Run*) override¶
Close the output file and move the temporary worker file to its final path.
-
inline int GetCurrentRunPrintModulo() const¶
Print-modulo value chosen for the run currently being processed.
-
inline const auto &GetAllOutputDataFields()¶
Output schemes registered on this thread.
-
inline void ClearOutputDataFields()¶
Invoke RMGVOutputScheme::ClearBeforeEvent on every registered scheme.
-
RMGRunAction(bool persistency = false)¶