17 token_(consumes<edm::
HepMCProduct>(edm::
InputTag(iConfig.getUntrackedParameter(
"moduleLabel",std::
string(
"generator")),
"unsmeared"))),
18 decayType_(iConfig.getUntrackedParameter(
"decayType",1)),
19 leptonFlavour_(iConfig.getUntrackedParameter(
"leptonFlavour",0))
47 const HepMC::GenEvent * myGenEvent = evt->GetEvent();
49 unsigned int iE=0, iMu=0, iTau=0;
51 unsigned int iNuE=0, iNuMu=0, iNuTau=0;
53 unsigned int iLep=0, iNu=0;
56 for ( HepMC::GenEvent::particle_const_iterator
p = myGenEvent->particles_begin();
p != myGenEvent->particles_end(); ++
p ) {
58 int pdgID = (*p)->pdg_id();
60 int status = (*p)->status();
66 if (fabs(pdgID) == 11)
91 iNu = (iNuE+iNuMu+iNuTau);
102 else if (
leptonFlavour_ == 1 && iE == 1 && iNuE == 1 && iLep == 1 && iNu == 1)
107 else if (
leptonFlavour_ == 2 && iMu == 1 && iNuMu == 1 && iLep == 1 && iNu == 1)
112 else if (
leptonFlavour_ == 3 && iTau == 1 && iNuTau == 1 && iLep == 1 && iNu == 1)
119 if (iLep == 2 && iNu == 2)
126 if (iLep == 0 && iNu == 0)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::EDGetTokenT< edm::HepMCProduct > token_
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
unsigned int leptonFlavour_
virtual bool filter(edm::Event &, const edm::EventSetup &)
PythiaFilterTTBar(const edm::ParameterSet &)