46 #ifndef G4VITProcess_H
47 #define G4VITProcess_H
76 #define InitProcessState(destinationType,source) \
77 reference_cast<destinationType>(source)
79 #define DowncastProcessState(destinationType) \
80 G4dynamic_pointer_cast<destinationType>(G4VITProcess::fpState)
82 #define UpcastProcessState(destinationType) \
83 G4dynamic_pointer_cast<destinationType>(G4VITProcess::fpState)
85 #define DowncastState(destinationType,source) \
86 G4dynamic_pointer_cast<destinationType>(source)
88 #define UpcastState(destinationType,source) \
89 G4dynamic_pointer_cast<destinationType>(source)
173 return "G4ProcessState";
189 return dynamic_cast<T*
>(
this);
207 return typeid(
T).
name();
260 fpState->theInteractionTimeLeft = -1.0;
265 fpState->theNumberOfInteractionLengthLeft = -1.0;
294 if (
fpState->currentInteractionLength > 0.0)
296 fpState->theNumberOfInteractionLengthLeft -= previousStepSize
297 /
fpState->currentInteractionLength;
298 if (
fpState->theNumberOfInteractionLengthLeft < 0.)
309 G4cerr <<
"G4VITProcess::SubtractNumberOfInteractionLengthLeft()";
311 G4cerr <<
" currentInteractionLength = "
312 <<
fpState->currentInteractionLength <<
" [mm]";
313 G4cerr <<
" previousStepSize = " << previousStepSize <<
" [mm]";
317 G4String msg =
"Negative currentInteractionLength for ";
319 G4Exception(
"G4VITProcess::SubtractNumberOfInteractionLengthLeft()",
324 #endif // G4VITProcess_H