39 :userStackingAction(0),verboseLevel(0),numberOfAdditionalWaitingStacks(0)
42 #ifdef G4_USESMARTSTACK
60 G4cout <<
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" <<
G4endl;
62 G4cout <<
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" <<
G4endl;
79 const{
return false; }
97 ED <<
"A track without proper process manager is pushed into the track stack.\n"
100 { ED <<
"created by a primary particle generator."; }
107 { ED <<
"creaded by unknown process."; }
109 G4Exception(
"G4StackManager::PushOneTrack",
"Event10051",
119 if(classification==
fKill)
124 G4cout <<
" ---> G4Track " << newTrack <<
" (trackID "
130 delete newTrajectory;
135 switch (classification)
147 G4int i = classification - 10;
150 ED <<
"invalid classification " << classification <<
G4endl;
151 G4Exception(
"G4StackManager::PushOneTrack",
"Event0051",
169 G4cout <<
"### pop requested out of "
178 <<
" waiting tracks are re-classified to" <<
G4endl;
194 <<
" waiting tracks." <<
G4endl;
206 G4cout <<
"Selected G4StackedTrack : " << &selectedStackedTrack
207 <<
" with G4Track " << selectedStackedTrack.
GetTrack()
214 return selectedTrack;
231 switch (classification)
247 G4int i = classification - 10;
250 ED <<
"invalid classification " << classification <<
G4endl;
251 G4Exception(
"G4StackManager::ReClassify",
"Event0052",
267 G4int n_passedFromPrevious = 0;
275 <<
" postponed tracked are now shifted to the stack." <<
G4endl;
295 if(classification==
fKill)
302 aTrack->
SetTrackID(-(++n_passedFromPrevious));
303 switch (classification)
315 G4int i = classification - 10;
318 ED <<
"invalid classification " << classification <<
G4endl;
319 G4Exception(
"G4StackManager::PrepareNewEvent",
"Event0053",
330 return n_passedFromPrevious;
355 if(origin==destination)
return;
356 if(origin==
fKill)
return;
375 if(destination==
fKill)
397 int i = destination - 10;
416 if(origin==destination)
return;
417 if(origin==
fKill)
return;
437 if(destination==
fKill)
439 if( originStack && originStack->
GetNTrack() ) {
465 int i = destination - 10;
469 if(originStack && originStack->
GetNTrack()) {
471 if(targetStack) { targetStack->
PushToStack(aStackedTrack); }
476 if(targetStack) { targetStack->
PushToStack(aStackedTrack); }
551 return classification;