19 const HepMC::GenEvent* genEvt = (*itr);
21 for (
const auto& pitr: genEvt->particles()) {
23 if ( !pitr->end_vertex() && pitr->status()==3)
continue;
24 else if (!pitr->end_vertex() ){
29 for (
const auto& thisChild: pitr->end_vertex()->particles_out()) {
30 if (std::abs(thisChild->pdg_id()) == 11 || std::abs(thisChild->pdg_id()) == 13 || std::abs(thisChild->pdg_id()) == 15) {
31 return StatusCode::SUCCESS;
37 for (HepMC::GenEvent::particle_const_iterator pitr = genEvt->particles_begin(); pitr != genEvt->particles_end(); ++pitr) {
39 if ( !(*pitr)->end_vertex() && (*pitr)->status()==3)
continue;
40 else if ( !(*pitr)->end_vertex() ){
45 HepMC::GenVertex::particle_iterator firstChild = (*pitr)->end_vertex()->particles_begin(
HepMC::children);
46 HepMC::GenVertex::particle_iterator endChild = (*pitr)->end_vertex()->particles_end(
HepMC::children);
47 HepMC::GenVertex::particle_iterator thisChild = firstChild;
48 for (; thisChild != endChild; ++thisChild) {
49 if (std::abs((*thisChild)->pdg_id()) == 11 || std::abs((*thisChild)->pdg_id()) == 13 || std::abs((*thisChild)->pdg_id()) == 15) {
50 return StatusCode::SUCCESS;
57 setFilterPassed(
false);
58 return StatusCode::SUCCESS;