13 sumETThreshold_=(float)iConfig.
getParameter<
double>(
"sumETThreshold");
14 seedETThreshold_=(float)iConfig.
getParameter<
double>(
"seedETThreshold");
15 nonPhotETMax_=(float)iConfig.
getParameter<
double>(
"nonPhotETMax");
16 isoConeSize_=(float)iConfig.
getParameter<
double>(
"isoConeSize");
28 iEvent.
getByLabel(
"genParticles",genParsHandle);
29 vector<reco::GenParticle> genPars=*genParsHandle;
31 for (uint32_t ig=0;ig<genPars.size();ig++) {
34 if (fabs(gp.
pdgId())!=22)
continue;
35 if (gp.
status()!=1)
continue;
36 if (gp.
et()<seedETThreshold_)
continue;
38 float photetsum=gp.
et();
40 for (uint32_t jg=0;jg<genPars.size();jg++) {
43 if (opar.
status()!=1)
continue;
45 if (dr>=isoConeSize_)
continue;
46 if (fabs(opar.
pdgId())==22) {
49 nonphotetsum+=opar.
et();
54 if (photetsum>sumETThreshold_ && nonphotetsum<nonPhotETMax_)
return true;
HighETPhotonsFilterAlgo(const edm::ParameterSet &)
T getParameter(std::string const &) const
virtual int pdgId() const
PDG identifier.
virtual double et() const
transverse energy
virtual int status() const
status word
~HighETPhotonsFilterAlgo()
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
double deltaR(double eta1, double eta2, double phi1, double phi2)
bool filter(const edm::Event &iEvent)