19#include "BDSProcessUserSpecialCutsPDG.hh"
26BDSProcessUserSpecialCutsPDG::BDSProcessUserSpecialCutsPDG():
27 G4UserSpecialCuts(
"BDSUserSpecialCutsPDGID")
30BDSProcessUserSpecialCutsPDG::BDSProcessUserSpecialCutsPDG(
const std::set<G4int>& pdgIDsIn):
31 G4UserSpecialCuts(
"BDSUserSpecialCutsPDGID"),
35BDSProcessUserSpecialCutsPDG::~BDSProcessUserSpecialCutsPDG()
38G4double BDSProcessUserSpecialCutsPDG::PostStepGetPhysicalInteractionLength(
const G4Track& track,
39 G4double previousStepSize,
40 G4ForceCondition* condition)
42 G4int pdgID = track.GetDynamicParticle()->GetPDGcode();
43 if (pdgIDs.count(pdgID) > 0)
45 *condition = NotForced;
46 return std::numeric_limits<double>::max();
49 {
return G4UserSpecialCuts::PostStepGetPhysicalInteractionLength(track, previousStepSize, condition);}