Centralized staging policy for waiting-stack based track deferral. More...
#include <RMGStagingScheme.hh>


Public Member Functions | |
| std::optional< G4ClassificationOfNewTrack > | StackingActionClassify (const G4Track *, int) override |
Wraps G4UserStackingAction::StackingActionClassify. | |
| void | SteppingAction (const G4Step *) override |
| Evaluate optional stepping-time suspension criteria for configured particles. | |
| void | SetElectronVolumeSafety (double safety) |
| Set the minimum distance to a Germanium detector surface for an electron to be staged. | |
| void | AddElectronVolumeName (std::string volume) |
| Add a volume name in which electron staging is active. | |
| void | SetElectronMaxEnergyThresholdForStacking (double energy) |
| Set the maximum kinetic energy for e- tracks to be considered for staging. | |
| void | SetElectronMinEnergyThresholdForStacking (double energy) |
| Set the minimum kinetic energy for e- tracks to be considered for staging. | |
Public Member Functions inherited from RMGVOutputScheme | |
| virtual void | AssignOutputNames (G4AnalysisManager *) |
| Initialize ntuple column names for this output scheme. | |
| virtual void | ClearBeforeEvent () |
| Clear any event-specific data. | |
| virtual bool | ShouldDiscardEvent (const G4Event *) |
| Decide whether to discard the current event. | |
| virtual bool | StoreAlways () const |
| Indicates whether the output scheme always stores event data. | |
| virtual void | StoreEvent (const G4Event *) |
| Store the event data. | |
| virtual std::optional< bool > | StackingActionNewStage (const int) |
| Hook for transitioning to a new stacking stage. | |
| virtual void | TrackingActionPre (const G4Track *) |
| Hook called before tracking a new particle. | |
| virtual void | TrackingActionPost (const G4Track *) |
| Hook called after tracking a new particle. | |
| virtual void | EndOfRunAction (const G4Run *) |
| Perform final actions at the end of a run. | |
| void | SetNtuplePerDetector (bool ntuple_per_det) |
| Specify whether to create separate ntuples for each detector. | |
| void | SetNtupleUseVolumeName (bool use_vol_name) |
| Specify whether to use the physical volume name for naming ntuples. | |
| void | SetEventIDOffset (int offset) |
Additional Inherited Members | |
Static Public Attributes inherited from RMGVOutputScheme | |
| static std::string | fUIDKeyFormatString = "det{:03}" |
Protected Member Functions inherited from RMGVOutputScheme | |
| virtual std::string | GetNtupleName (RMGDetectorMetadata det) const |
| virtual std::string | GetNtupleNameFlat () const |
| void | CreateNtupleFOrDColumn (G4AnalysisManager *ana_man, int nt, std::string name, bool use_float) |
| void | FillNtupleFOrDColumn (G4AnalysisManager *ana_man, int nt, int col, double val, bool use_float) |
| int | GetEventIDForStorage (const G4Event *evt) const |
Protected Attributes inherited from RMGVOutputScheme | |
| bool | fNtuplePerDetector = true |
| bool | fNtupleUseVolumeName = false |
| int | fEventIDOffset = 0 |
Centralized staging policy for waiting-stack based track deferral.
|
inline |
Set the maximum kinetic energy for e- tracks to be considered for staging.
Only tracks with kinetic energy below this threshold will be staged. If set to a negative value, no energy threshold is applied.
|
inline |
Set the minimum kinetic energy for e- tracks to be considered for staging.
Only tracks with kinetic energy above this threshold will be staged. This is useful to avoid staging low-energy electrons (e.g. below the Cherenkov threshold) that cannot produce the optical photons staging is meant to capture. If set to a negative value, no energy threshold is applied.
|
inline |
Set the minimum distance to a Germanium detector surface for an electron to be staged.
Set to 0 (the default) to stage electrons regardless of surface distance.
|
overridevirtual |
Wraps G4UserStackingAction::StackingActionClassify.
This classifies configured optical photons and electrons as fWaiting.
Reimplemented from RMGVOutputScheme.
|
overridevirtual |
Evaluate optional stepping-time suspension criteria for configured particles.
Reimplemented from RMGVOutputScheme.