#include <StepLimiter.hh>
Public Member Functions | |
StepLimiter (G4int ver=0, const G4String &name="StepLimiter") | |
virtual | ~StepLimiter () |
virtual void | ConstructParticle () |
virtual void | ConstructProcess () |
Private Attributes | |
G4int | verbose |
Definition at line 26 of file StepLimiter.hh.
StepLimiter::StepLimiter | ( | G4int | ver = 0 , |
|
const G4String & | name = "StepLimiter" | |||
) |
Definition at line 46 of file StepLimiter.cc.
00047 : G4VPhysicsConstructor(name), verbose(ver) 00048 { 00049 G4LossTableManager::Instance(); 00050 }
StepLimiter::~StepLimiter | ( | ) | [virtual] |
void StepLimiter::ConstructParticle | ( | ) | [virtual] |
Definition at line 57 of file StepLimiter.cc.
References rb::Gamma().
00058 { 00059 // gamma 00060 G4Gamma::Gamma(); 00061 00062 // leptons 00063 G4Electron::Electron(); 00064 G4Positron::Positron(); 00065 G4MuonPlus::MuonPlus(); 00066 G4MuonMinus::MuonMinus(); 00067 00068 // mesons 00069 G4PionPlus::PionPlusDefinition(); 00070 G4PionMinus::PionMinusDefinition(); 00071 G4KaonPlus::KaonPlusDefinition(); 00072 G4KaonMinus::KaonMinusDefinition(); 00073 00074 // barions 00075 G4Proton::Proton(); 00076 G4AntiProton::AntiProton(); 00077 00078 // ions 00079 G4Deuteron::Deuteron(); 00080 G4Triton::Triton(); 00081 G4He3::He3(); 00082 G4Alpha::Alpha(); 00083 G4GenericIon::GenericIonDefinition(); 00084 }
void StepLimiter::ConstructProcess | ( | ) | [virtual] |
Definition at line 88 of file StepLimiter.cc.
00089 { 00090 00091 theParticleIterator->reset(); 00092 while( (*theParticleIterator)() ){ 00093 G4ParticleDefinition* particle = theParticleIterator->value(); 00094 G4ProcessManager* pmanager = particle->GetProcessManager(); 00095 G4String particleName = particle->GetParticleName(); 00096 00097 if (particleName == "gamma") { 00098 pmanager ->AddDiscreteProcess(new G4StepLimiter()); 00099 } else if (particleName == "e-") { 00100 pmanager ->AddDiscreteProcess(new G4StepLimiter()); 00101 } else if (particleName == "e+") { 00102 pmanager ->AddDiscreteProcess(new G4StepLimiter()); 00103 } else if (particleName == "mu+" || 00104 particleName == "mu-" ) { 00105 pmanager ->AddDiscreteProcess(new G4StepLimiter()); 00106 } else if (particleName == "alpha" || 00107 particleName == "He3") { 00108 pmanager ->AddDiscreteProcess(new G4StepLimiter()); 00109 } else if (particleName == "GenericIon") { 00110 pmanager ->AddDiscreteProcess(new G4StepLimiter()); 00111 } else if (particleName == "pi+" || 00112 particleName == "pi-" || 00113 particleName == "kaon+" || 00114 particleName == "kaon-" || 00115 particleName == "proton" || 00116 particleName == "anti_proton" ) { 00117 pmanager ->AddDiscreteProcess(new G4StepLimiter()); 00118 } 00119 00120 } 00121 00122 }
G4int StepLimiter::verbose [private] |
Definition at line 37 of file StepLimiter.hh.