92{
94
95
96
97 auto particleIterator=GetParticleIterator();
98 particleIterator->reset();
99 while( (*particleIterator)() ){
101 G4String particleName = particle->GetParticleName();
102
103 if (particleName == "gamma") {
104
109 ph->RegisterProcess(cs, particle);
111
112 } else if (particleName == "e-") {
113
117
118 } else if (particleName == "e+") {
119
124
125 } else if (particleName == "mu+" ||
126 particleName == "mu-" ) {
127
132
133 } else if( particleName == "proton" ||
134 particleName == "pi-" ||
135 particleName == "pi+" ) {
136
141
142 } else if( particleName == "alpha" ||
143 particleName == "He3" ) {
144
148
149 } else if( particleName == "GenericIon" ) {
150
154 ph->RegisterProcess(ionIoni, particle);
156
157 } else if ((!particle->IsShortLived()) &&
158 (particle->GetPDGCharge() != 0.0) &&
159 (particle->GetParticleName() != "chargedgeantino")) {
160
161
164 }
165 }
166
167
168
170 G4LossTableManager::Instance()->SetAtomDeexcitation(de);
171}