37 #ifndef TrackingManagerHelper_hh 38 #define TrackingManagerHelper_hh 1 40 #include "G4TrackVector.hh" 88 virtual G4double
MakeStep(G4Track&
track, G4Step&
step, G4double physicalStep) = 0;
93 template <
typename PhysicsImpl,
typename NavigationImpl>
96 template <
typename PhysicsImpl>
99 template <
typename PhysicsImpl>
103 #include "TrackingManagerHelper.icc" virtual void FinishStep(G4Track &track, G4Step &step)=0
static void TrackNeutralParticle(G4Track *aTrack, PhysicsImpl &physics)
virtual void StartTracking(G4Track *)
TEMPL(T2) struct Divides void
static void TrackParticle(G4Track *aTrack, PhysicsImpl &physics, NavigationImpl &navigation)
static void TrackChargedParticle(G4Track *aTrack, PhysicsImpl &physics)
virtual void EndTracking()
virtual void PostStepDoIt(G4Track &track, G4Step &step, G4TrackVector &secondaries)=0
virtual bool HasAtRestProcesses()
virtual void AtRestDoIt(G4Track &track, G4Step &step, G4TrackVector &secondaries)
virtual G4double MakeStep(G4Track &track, G4Step &step, G4double physicalStep)=0
virtual void AlongStepDoIt(G4Track &track, G4Step &step, G4TrackVector &secondaries)=0
virtual G4double GetPhysicalInteractionLength(const G4Track &track)=0