16#ifndef _RMG_TRACKING_ACTION_HH_
17#define _RMG_TRACKING_ACTION_HH_
21#include "G4GenericMessenger.hh"
22#include "G4UserTrackingAction.hh"
38 ~RMGTrackingAction() =
default;
40 RMGTrackingAction(RMGTrackingAction
const&) =
delete;
41 RMGTrackingAction& operator=(RMGTrackingAction
const&) =
delete;
42 RMGTrackingAction(RMGTrackingAction&&) =
delete;
43 RMGTrackingAction& operator=(RMGTrackingAction&&) =
delete;
58 bool fResetInitialDecayTime =
true;
59 bool fHadLongTimeWarning =
false;
60 double fMaxRepresentableGlobalTime = -1;
62 bool ResetInitialDecayTime(
const G4Track*);
64 void SetLongGlobalTimeUncertaintyWarning(
double);
66 std::unique_ptr<G4GenericMessenger> fMessenger;
67 void DefineCommands();
Per-thread run action managing output files, ntuples and output schemes.
Definition RMGRunAction.hh:40
void PreUserTrackingAction(const G4Track *) override
Forward the track to all output schemes for pre-tracking bookkeeping.
Definition RMGTrackingAction.cc:34
G4TrackingManager * GetTrackingManager()
Access the underlying Geant4 tracking manager (for output-scheme integration).
Definition RMGTrackingAction.hh:53
void PostUserTrackingAction(const G4Track *) override
Run post-tracking output bookkeeping, reset initial-decay times and emit a one-shot warning when glob...
Definition RMGTrackingAction.cc:39