Class RMGTrackOutputScheme

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

Class Documentation

class RMGTrackOutputScheme : public RMGVOutputScheme

Output scheme for track information.

This output scheme records the properties of each track generated. The properties of each track recorded:

  • event index,

  • track ID,

  • parent track ID,

  • creator process,

  • particle type,

  • time,

  • position,

  • momentum,

  • kinetic energy

The creator process is mapped to a unique integer value and additionally stored in the output.

It can be specified that the information is always stored, even if the event would be discarded by other output schemes.

Public Functions

RMGTrackOutputScheme()
virtual void AssignOutputNames(G4AnalysisManager*) override

Sets the names of the output columns, invoked in RMGRunAction::SetupAnalysisManager.

virtual void TrackingActionPre(const G4Track*) override

Called in RMGTrackingAction::PreUserTrackingAction to collect information about the track before it is processed.

virtual void EndOfRunAction(const G4Run*) override

handles the storage of the process map.

virtual void ClearBeforeEvent() override

Clears the event data and frees memory before the next event is processed.

virtual void StoreEvent(const G4Event*) override

Store the information from the event, invoked in RMGEventAction::EndOfEventAction.

If fStoreAlways is true, the information is always stored, even if the event would be discarded by other output schemes.

inline virtual bool StoreAlways() const override

Invoked in RMGEventAction::EndOfEventAction and decides whether to always store this OutputScheme.

Protected Functions

inline virtual std::string GetNtupleName(RMGDetectorMetadata) const override
inline void AddParticleFilter(const int pdg)
inline void AddProcessFilter(const std::string proc)
inline void SetEnergyFilter(double energy)