1#include "SimCore/PhotoNuclearModels/BertiniNothingHardModel.h"
4bool BertiniNothingHardProcess::acceptEvent()
const {
5 int secondaries{theParticleChange.GetNumberOfSecondaries()};
6 for (
int i{0}; i < secondaries; ++i) {
7 const auto secondary{theParticleChange.GetSecondary(i)->GetParticle()};
8 const auto pdgCode{secondary->GetDefinition()->GetPDGEncoding()};
12 const auto energy{secondary->GetKineticEnergy()};
13 if (energy > threshold_) {
21 G4ProcessManager* processManager) {
22 auto photoNuclearProcess{
23 new G4HadronInelasticProcess(
"photonNuclear", G4Gamma::Definition())};
26 model->SetMaxEnergy(15 * CLHEP::GeV);
28 photoNuclearProcess->RegisterMe(model);
29 processManager->AddDiscreteProcess(photoNuclearProcess);
constexpr bool skipCountingParticle(const int pdgcode) const
Whether or not to include a particular particle type in any counting.
void ConstructGammaProcess(G4ProcessManager *processManager) override
The primary part of the model interface, responsible for adding the desired G4HadronicInteraction to ...
virtual void addPNCrossSectionData(G4HadronInelasticProcess *process) const
Default implementation for adding XS data for the process.