65 fpTrack = apValueG4Track;
66 EventIsAborted =
false;
79 fpSteppingManager->SetInitialStep(fpTrack);
83 fpTrajectory =
nullptr;
84 if (fpUserTrackingAction !=
nullptr) {
85 fpUserTrackingAction->PreUserTrackingAction(fpTrack);
91#ifdef G4_STORE_TRAJECTORY
94 if ((StoreTrajectory != 0) && (fpTrajectory ==
nullptr)) {
96 switch (StoreTrajectory) {
115 fpSteppingManager->GetProcessNumber();
118 fpTrack->SetStep(fpSteppingManager->GetStep());
121 fpTrack->GetDefinition()->GetProcessManager()->StartTracking(fpTrack);
125 while ((fpTrack->GetTrackStatus() ==
fAlive) || (fpTrack->GetTrackStatus() ==
fStopButAlive)) {
126 fpTrack->IncrementCurrentStepNumber();
127 fpSteppingManager->Stepping();
128#ifdef G4_STORE_TRAJECTORY
129 if (StoreTrajectory != 0) {
130 fpTrajectory->AppendStep(fpSteppingManager->GetStep());
133 if (EventIsAborted) {
138 fpTrack->GetDefinition()->GetProcessManager()->EndTracking();
142 if (fpUserTrackingAction !=
nullptr) {
143 fpUserTrackingAction->PostUserTrackingAction(fpTrack);
148 if ((StoreTrajectory != 0) && verboseLevel > 10) {
149 fpTrajectory->ShowTrajectory();
152 if ((StoreTrajectory == 0) && (fpTrajectory !=
nullptr)) {
154 fpTrajectory =
nullptr;
const G4String & GetParticleName() const