33 const HepMC::GenEvent* genEvt = (*itr);
35 for (
const auto& pitr: *genEvt) {
38 eta_b[NPartons] = pitr->momentum().pseudoRapidity();
39 phi_b[NPartons] = pitr->momentum().phi();
43 for (
auto thisParent: pitr->production_vertex()->particles_in()) {
44 int parentID = std::abs(thisParent->pdg_id());
46 eta_e[NLeptons] = pitr->momentum().pseudoRapidity();
47 phi_e[NLeptons] = pitr->momentum().phi();
54 for (HepMC::GenEvent::particle_const_iterator pitr=genEvt->particles_begin(); pitr != genEvt->particles_end(); ++pitr) {
57 eta_b[NPartons] = (*pitr)->momentum().pseudoRapidity();
58 phi_b[NPartons] = (*pitr)->momentum().phi();
62 HepMC::GenVertex::particle_iterator firstParent, lastParent, thisParent;
63 firstParent = (*pitr)->production_vertex()->particles_begin(
HepMC::parents);
64 lastParent = (*pitr)->production_vertex()->particles_end(
HepMC::parents);
65 for (thisParent = firstParent; thisParent != lastParent++; ++thisParent) {
66 int parentID = abs((*thisParent)->pdg_id());
68 eta_e[NLeptons] = (*pitr)->momentum().pseudoRapidity();
69 phi_e[NLeptons] = (*pitr)->momentum().phi();
80 for (
int ib=0;
ib < NPartons;
ib++) {
85 for (
int ie=0;
ie < NLeptons;
ie++ ) {
102 for (
int ib = 0;
ib < NPartons;
ib++) {
103 is_OK = is_OK * e_found[
ib];
109 return StatusCode::SUCCESS;
116 setFilterPassed(
false);
117 return StatusCode::SUCCESS;
123 std::abs(
p->momentum().pseudoRapidity()) <=
m_EtaRange );