1#include "SimCore/PhotoNuclearModels/BertiniEventTopologyProcess.h"
4void BertiniEventTopologyProcess::cleanupSecondaries() {
5 int secondaries{theParticleChange.GetNumberOfSecondaries()};
7 for (
int i{0}; i < secondaries; ++i) {
12#ifndef __clang_analyzer__
13 auto secondary{theParticleChange.GetSecondary(i)->GetParticle()};
19G4HadFinalState* BertiniEventTopologyProcess::ApplyYourself(
20 const G4HadProjectile& projectile, G4Nucleus& targetNucleus) {
22 if (!acceptProjectile(projectile) || !acceptTarget(targetNucleus)) {
24 return G4CascadeInterface::ApplyYourself(projectile, targetNucleus);
28 theParticleChange.Clear();
29 theParticleChange.SetStatusChange(stopAndKill);
30 G4CascadeInterface::ApplyYourself(projectile, targetNucleus);
32 incrementEventWeight(attempts);
33 return &theParticleChange;
Dynamically loadable photonuclear models either from SimCore or external libraries implementing this ...