Per-thread run action managing output files, ntuples and output schemes. More...
#include <RMGRunAction.hh>


Public Member 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 (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. | |
| G4Run * | GenerateRun () override |
| Allocate and return an RMGRun instance for the current run. | |
| 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. | |
| int | GetCurrentRunPrintModulo () const |
| Print-modulo value chosen for the run currently being processed. | |
| const auto & | GetAllOutputDataFields () |
| Output schemes registered on this thread. | |
| void | ClearOutputDataFields () |
| Invoke RMGVOutputScheme::ClearBeforeEvent on every registered scheme. | |
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.
| void RMGRunAction::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.