Class RMGStagingScheme¶
Defined in File RMGStagingScheme.hh
Inheritance Relationships¶
Base Type¶
public RMGVOutputScheme(Class RMGVOutputScheme)
Class Documentation¶
-
class RMGStagingScheme : public RMGVOutputScheme¶
Centralized staging policy for waiting-stack based track deferral.
Public Functions
-
RMGStagingScheme()¶
-
virtual std::optional<G4ClassificationOfNewTrack> StackingActionClassify(const G4Track*, int) override¶
Wraps
G4UserStackingAction::StackingActionClassify.This classifies configured optical photons and electrons as
fWaiting.
-
virtual void SteppingAction(const G4Step*) override¶
Evaluate optional stepping-time suspension criteria for configured particles.
-
inline void SetElectronVolumeSafety(double safety)¶
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.
-
inline void AddElectronVolumeName(std::string volume)¶
Add a volume name in which electron staging is active.
-
inline void SetElectronMaxEnergyThresholdForStacking(double energy)¶
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 void SetElectronMinEnergyThresholdForStacking(double energy)¶
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.
-
RMGStagingScheme()¶