31 if(m_additionalInteractingParticleTypes.empty()) {
32 ATH_MSG_DEBUG(
"No additional particle types will be classified as interacting.");
35 ATH_MSG_DEBUG(
"Will classify particles with the following additional PDG codes as interacting:");
36 for(
const auto& pdg_id : m_additionalInteractingParticleTypes) {
40 if(m_additionalNonInteractingParticleTypes.empty()) {
41 ATH_MSG_DEBUG(
"No additional particle types will be classified as non-interacting.");
44 ATH_MSG_DEBUG(
"Will classify particles with the following additional PDG codes as non-interacting:");
45 for(
const auto& pdg_id : m_additionalNonInteractingParticleTypes) {
49 if (!m_additionalInteractingParticleTypes.empty() && !m_additionalNonInteractingParticleTypes.empty()) {
52 for (
const auto& pdg_id : m_additionalInteractingParticleTypes) {
53 if (
find(m_additionalNonInteractingParticleTypes.begin(),
54 m_additionalNonInteractingParticleTypes.end(),
55 pdg_id) != m_additionalNonInteractingParticleTypes.end())
57 ATH_MSG_ERROR(
"Particle with PDG code " << pdg_id <<
" requested to be classified as both interacting and non-interacting.");
63 return StatusCode::FAILURE;
67 return StatusCode::SUCCESS;
73 const int pdg_id =
particle->pdg_id();
76 const int pdg_id =
particle.pdg_id();
79 m_additionalInteractingParticleTypes.end(),
80 pdg_id) != m_additionalInteractingParticleTypes.end();
81 const bool isNonInteracting =
find(m_additionalNonInteractingParticleTypes.begin(),
82 m_additionalNonInteractingParticleTypes.end(),
83 pdg_id) != m_additionalNonInteractingParticleTypes.end();