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

Special scheme to stack electron/positron tracks created in a specific volume. More...

#include <RMGVolumeDistanceStacker.hh>

Inheritance diagram for RMGVolumeDistanceStacker:
Collaboration diagram for RMGVolumeDistanceStacker:

Public Member Functions

std::optional< G4ClassificationOfNewTrack > StackingActionClassify (const G4Track *, int) override
 Wraps G4UserStackingAction::StackingActionClassify.
 
void SetVolumeSafety (double safety)
 Set the minimum distance to any other volume for this track to be stacked.
 
void SetVolumeName (std::string volume)
 Set the volume name in which to stack e-/e+ tracks.
 
- 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 SteppingAction (const G4Step *)
 Hook called after each step.
 
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
 

Detailed Description

Special scheme to stack electron/positron tracks created in a specific volume.

Member Function Documentation

◆ StackingActionClassify()

std::optional< G4ClassificationOfNewTrack > RMGVolumeDistanceStacker::StackingActionClassify ( const G4Track * aTrack,
int stage )
overridevirtual

Wraps G4UserStackingAction::StackingActionClassify.

This is used to classify all e-/e+ tracks as fWaiting if the conditions are met.

Reimplemented from RMGVOutputScheme.


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