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))
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();
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 filter(edm::Event &, const edm::EventSetup &) override
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
~PythiaFilterTTBar() override
unsigned int leptonFlavour_
PythiaFilterTTBar(const edm::ParameterSet &)
Abs< T >::type abs(const T &t)
const HepMC::GenEvent * GetEvent() const