18#include "BDSProcessUserSpecialCutsPDG.hh"
25BDSProcessUserSpecialCutsPDG::BDSProcessUserSpecialCutsPDG():
26 G4UserSpecialCuts(
"BDSUserSpecialCutsPDGID")
29BDSProcessUserSpecialCutsPDG::BDSProcessUserSpecialCutsPDG(
const std::set<G4int>& pdgIDsIn):
30 G4UserSpecialCuts(
"BDSUserSpecialCutsPDGID"),
34BDSProcessUserSpecialCutsPDG::~BDSProcessUserSpecialCutsPDG()
37G4double BDSProcessUserSpecialCutsPDG::PostStepGetPhysicalInteractionLength(
const G4Track& track,
38 G4double previousStepSize,
39 G4ForceCondition* condition)
41 G4int pdgID = track.GetDynamicParticle()->GetPDGcode();
42 if (pdgIDs.count(pdgID) > 0)
44 *condition = NotForced;
45 return std::numeric_limits<double>::max();
48 {
return G4UserSpecialCuts::PostStepGetPhysicalInteractionLength(track, previousStepSize, condition);}