Public Member Functions | |
ZStepLimiter () | |
G4VProcess * | clone () |
virtual G4double | PostStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition) |
G4VParticleChange * | PostStepDoIt (const G4Track &track, const G4Step &stepData) |
virtual G4double | AlongStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &proposedSafety, G4GPILSelection *selection) |
virtual G4VParticleChange * | AlongStepDoIt (const G4Track &track, const G4Step &stepData) |
virtual G4double | AtRestGetPhysicalInteractionLength (const G4Track &track, G4ForceCondition *condition) |
virtual G4VParticleChange * | AtRestDoIt (const G4Track &track, const G4Step &stepData) |
Static Public Member Functions | |
static void | setMaxStep (G4double ms) |
Private Attributes | |
ParticleChange | change |
Static Private Attributes | |
static G4double | maxStep = DBL_MAX |
Classes | |
class | ParticleChange |
ZStepLimiter::ZStepLimiter | ( | ) | [inline] |
Referenced by clone().
00071 : G4VProcess("ZStepLimiter",fUserDefined), change() { 00072 G4ParticleTable::G4PTblDicIterator *theParticleIterator = 00073 G4ParticleTable::GetParticleTable()->GetIterator(); 00074 theParticleIterator->reset(); 00075 while((*theParticleIterator)()) { 00076 G4ParticleDefinition *pd = theParticleIterator->value(); 00077 G4ProcessManager *pmgr = pd->GetProcessManager(); 00078 if(!pmgr) { 00079 printf("ZStepLimiter: particle '%s' has no ProcessManager!\n", 00080 pd->GetParticleName().c_str()); 00081 continue; 00082 } 00083 pmgr->AddProcess(this,-1,-1,3); 00084 pmgr->SetProcessOrdering(this,idxPostStep); 00085 } 00086 }
G4VProcess* ZStepLimiter::clone | ( | ) | [inline] |
static void ZStepLimiter::setMaxStep | ( | G4double | ms | ) | [inline, static] |
References maxStep.
Referenced by BLManager::PreUserTrackingAction(), and BLManager::UserSteppingAction().
00090 { maxStep = ms; }
virtual G4double ZStepLimiter::PostStepGetPhysicalInteractionLength | ( | const G4Track & | track, | |
G4double | previousStepSize, | |||
G4ForceCondition * | condition | |||
) | [inline, virtual] |
G4VParticleChange* ZStepLimiter::PostStepDoIt | ( | const G4Track & | track, | |
const G4Step & | stepData | |||
) | [inline] |
virtual G4double ZStepLimiter::AlongStepGetPhysicalInteractionLength | ( | const G4Track & | track, | |
G4double | previousStepSize, | |||
G4double | currentMinimumStep, | |||
G4double & | proposedSafety, | |||
G4GPILSelection * | selection | |||
) | [inline, virtual] |
virtual G4VParticleChange* ZStepLimiter::AlongStepDoIt | ( | const G4Track & | track, | |
const G4Step & | stepData | |||
) | [inline, virtual] |
virtual G4double ZStepLimiter::AtRestGetPhysicalInteractionLength | ( | const G4Track & | track, | |
G4ForceCondition * | condition | |||
) | [inline, virtual] |
virtual G4VParticleChange* ZStepLimiter::AtRestDoIt | ( | const G4Track & | track, | |
const G4Step & | stepData | |||
) | [inline, virtual] |
G4double ZStepLimiter::maxStep = DBL_MAX [static, private] |
Referenced by PostStepGetPhysicalInteractionLength(), and setMaxStep().
ParticleChange ZStepLimiter::change [private] |
Referenced by AlongStepDoIt(), AtRestDoIt(), and PostStepDoIt().