File tree Expand file tree Collapse file tree 5 files changed +32
-7
lines changed Expand file tree Collapse file tree 5 files changed +32
-7
lines changed Original file line number Diff line number Diff line change @@ -260,7 +260,11 @@ void G4SteppingManager::GetProcessNumber()
260
260
}
261
261
262
262
// Transportation is assumed to be the last process in the vector
263
- if (kp == MAXofAlongStepLoops-1 )
263
+ // This is a bad assumption, should actually check! -rtj-
264
+ // if(kp == MAXofAlongStepLoops-1)
265
+ // fStepStatus = fGeomBoundary;
266
+ G4ProcessType ptype = fCurrentProcess ->GetProcessType ();
267
+ if (ptype == fTransportation || ptype == fParallel )
264
268
fStepStatus = fGeomBoundary ;
265
269
}
266
270
@@ -341,6 +345,7 @@ void G4SteppingManager::InvokeAtRestDoItProcs()
341
345
= fCurrentProcess ->AtRestDoIt ( *fTrack , *fStep );
342
346
343
347
// Set the current process as a process which defined this Step length
348
+ // Do not select a ParallelWorld process as the defining AtRestProc
344
349
if (fCurrentProcess ->GetProcessType () != fParallel )
345
350
fStep ->GetPostStepPoint ()
346
351
->SetProcessDefinedStep (fCurrentProcess );
Original file line number Diff line number Diff line change @@ -260,7 +260,11 @@ void G4SteppingManager::GetProcessNumber()
260
260
}
261
261
262
262
// Transportation is assumed to be the last process in the vector
263
- if (kp == MAXofAlongStepLoops-1 )
263
+ // This is a bad assumption, should actually check! -rtj-
264
+ // if(kp == MAXofAlongStepLoops-1)
265
+ // fStepStatus = fGeomBoundary;
266
+ G4ProcessType ptype = fCurrentProcess ->GetProcessType ();
267
+ if (ptype == fTransportation || ptype == fParallel )
264
268
fStepStatus = fGeomBoundary ;
265
269
}
266
270
@@ -341,6 +345,7 @@ void G4SteppingManager::InvokeAtRestDoItProcs()
341
345
= fCurrentProcess ->AtRestDoIt ( *fTrack , *fStep );
342
346
343
347
// Set the current process as a process which defined this Step length
348
+ // Do not select a ParallelWorld process as the defining AtRestProc
344
349
if (fCurrentProcess ->GetProcessType () != fParallel )
345
350
fStep ->GetPostStepPoint ()
346
351
->SetProcessDefinedStep (fCurrentProcess );
Original file line number Diff line number Diff line change @@ -260,7 +260,11 @@ void G4SteppingManager::GetProcessNumber()
260
260
}
261
261
262
262
// Transportation is assumed to be the last process in the vector
263
- if (kp == MAXofAlongStepLoops-1 )
263
+ // This is a bad assumption, should actually check! -rtj-
264
+ // if(kp == MAXofAlongStepLoops-1)
265
+ // fStepStatus = fGeomBoundary;
266
+ G4ProcessType ptype = fCurrentProcess ->GetProcessType ();
267
+ if (ptype == fTransportation || ptype == fParallel )
264
268
fStepStatus = fGeomBoundary ;
265
269
}
266
270
@@ -341,6 +345,7 @@ void G4SteppingManager::InvokeAtRestDoItProcs()
341
345
= fCurrentProcess ->AtRestDoIt ( *fTrack , *fStep );
342
346
343
347
// Set the current process as a process which defined this Step length
348
+ // Do not select a ParallelWorld process as the defining AtRestProc
344
349
if (fCurrentProcess ->GetProcessType () != fParallel )
345
350
fStep ->GetPostStepPoint ()
346
351
->SetProcessDefinedStep (fCurrentProcess );
Original file line number Diff line number Diff line change @@ -260,8 +260,12 @@ void G4SteppingManager::GetProcessNumber()
260
260
}
261
261
262
262
// Transportation is assumed to be the last process in the vector
263
- if (kp == MAXofAlongStepLoops-1 )
264
- fStepStatus = fGeomBoundary ;
263
+ // This is a bad assumption, should actually check! -rtj-
264
+ // if(kp == MAXofAlongStepLoops-1)
265
+ // fStepStatus = fGeomBoundary;
266
+ G4ProcessType ptype = fCurrentProcess ->GetProcessType ();
267
+ if (ptype == fTransportation || ptype == fParallel )
268
+ fStepStatus = fGeomBoundary ;
265
269
}
266
270
267
271
// Make sure to check the safety, even if Step is not limited
@@ -341,6 +345,7 @@ void G4SteppingManager::InvokeAtRestDoItProcs()
341
345
= fCurrentProcess ->AtRestDoIt ( *fTrack , *fStep );
342
346
343
347
// Set the current process as a process which defined this Step length
348
+ // Do not select a ParallelWorld process as the defining AtRestProc
344
349
if (fCurrentProcess ->GetProcessType () != fParallel )
345
350
fStep ->GetPostStepPoint ()
346
351
->SetProcessDefinedStep (fCurrentProcess );
Original file line number Diff line number Diff line change @@ -259,8 +259,12 @@ void G4SteppingManager::GetProcessNumber()
259
259
}
260
260
261
261
// Transportation is assumed to be the last process in the vector
262
- if (kp == MAXofAlongStepLoops-1 )
263
- fStepStatus = fGeomBoundary ;
262
+ // This is a bad assumption, should actually check! -rtj-
263
+ // if(kp == MAXofAlongStepLoops-1)
264
+ // fStepStatus = fGeomBoundary;
265
+ G4ProcessType ptype = fCurrentProcess ->GetProcessType ();
266
+ if (ptype == fTransportation || ptype == fParallel )
267
+ fStepStatus = fGeomBoundary ;
264
268
}
265
269
266
270
// Make sure to check the safety, even if Step is not limited
@@ -340,6 +344,7 @@ void G4SteppingManager::InvokeAtRestDoItProcs()
340
344
= fCurrentProcess ->AtRestDoIt ( *fTrack , *fStep );
341
345
342
346
// Set the current process as a process which defined this Step length
347
+ // Do not select a ParallelWorld process as the defining AtRestProc
343
348
if (fCurrentProcess ->GetProcessType () != fParallel )
344
349
fStep ->GetPostStepPoint ()
345
350
->SetProcessDefinedStep (fCurrentProcess );
You can’t perform that action at this time.
0 commit comments