remage
Simulation framework for HPGe-based experiments
 
Loading...
Searching...
No Matches
RMGRunAction Class Reference

Per-thread run action managing output files, ntuples and output schemes. More...

#include <RMGRunAction.hh>

Inheritance diagram for RMGRunAction:
Collaboration diagram for RMGRunAction:

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
 
RMGRunActionoperator= (RMGRunAction const &)=delete
 
 RMGRunAction (RMGRunAction &&)=delete
 
RMGRunActionoperator= (RMGRunAction &&)=delete
 
void SetupAnalysisManager ()
 Configure the Geant4 analysis manager and register all output ntuples.
 
G4RunGenerateRun () 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.
 

Detailed Description

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.

Member Function Documentation

◆ SetupAnalysisManager()

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.


The documentation for this class was generated from the following files: