47 ptCutOff_(c.getParameter<double>(
"ptCutOff")),
70 throw cms::Exception(
"ERROR: this VID selection is meant to be run on miniAOD/PAT only")
72 <<
"Change input format to PAT/miniAOD or contact Egamma experts" << std::endl
82 float isoValue = -999;
84 isoValue = elPat->ecalPFClusterIso();
86 isoValue = elPat->hcalPFClusterIso();
88 throw cms::Exception(
"ERROR: unknown type requested for PF cluster isolation.")
90 <<
"Check VID configuration." << std::endl;
92 float isoValueCorr =
std::max(0.0
f, isoValue - rho * eA);
106 throw cms::Exception(
"ERROR: this VID selection is meant to be run on miniAOD/PAT only")
108 <<
"Change input format to PAT/miniAOD or contact Egamma experts" << std::endl
115 float isoValue = -999;
117 isoValue = elPat->ecalPFClusterIso();
119 isoValue = elPat->hcalPFClusterIso();
121 throw cms::Exception(
"ERROR: unknown type requested for PF cluster isolation.")
123 <<
"Check VID configuration." << std::endl;
125 float isoValueCorr =
std::max(0.0
f, isoValue - rho * eA);
129 isoValueCorr /= ele->
pt();
edm::Handle< double > rhoHandle_
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
T getParameter(std::string const &) const
CandidateType candidateType() const final
std::unordered_map< std::string, edm::InputTag > contentTags_
T const * get() const
Returns C++ pointer to the item.
EffectiveAreas effectiveAreas_
double pt() const final
transverse momentum
const float getEffectiveArea(float eta) const
Abs< T >::type abs(const T &t)
const float isoCutEELowPt_
const float isoCutEBLowPt_
std::unordered_map< std::string, edm::EDGetToken > contentTokens_
GsfEleCalPFClusterIsoCut(const edm::ParameterSet &c)
const float isoCutEEHighPt_
Analysis-level electron class.
void getEventContent(const edm::EventBase &) final
bool getByLabel(InputTag const &, Handle< T > &) const
double value(const reco::CandidatePtr &cand) const final
SuperClusterRef superCluster() const override
reference to a SuperCluster
const float isoCutEBHighPt_
#define DEFINE_EDM_PLUGIN(factory, type, name)
const float barrelCutOff_
result_type operator()(const reco::GsfElectronPtr &) const final
void setConsumes(edm::ConsumesCollector &) final