56 int nChargedLeptons = 0;
64 const HepMC::GenEvent* genEvt = *itr;
67 for (
const auto&
part: *genEvt){
69 bool allowedParent =
false;
73 if (!allowedParent)
continue;
75 if (!
part->end_vertex())
continue;
77 for (
const auto& opitr: *(
part->end_vertex())) {
78 int apid = std::abs(opitr->pdg_id());
79 if (apid == 1 || apid == 2 || apid == 3 || apid == 4 || apid ==5) nQuarks++;
80 if (apid == 5) nbQuarks++;
81 if (apid == 11 || apid == 13 || apid == 15) nChargedLeptons++;
82 if (apid == 12 || apid == 14 || apid == 16) nNeutrinos++;
83 if (apid == 22) nPhotons++;
89 setFilterPassed(
false);
92 setFilterPassed(
false);
95 setFilterPassed(
false);
98 setFilterPassed(
false);
101 setFilterPassed(
false);
104 setFilterPassed(
true);
106 return StatusCode::SUCCESS;