CMS 3D CMS Logo

GsfEleTrkPtIsoCut.cc
Go to the documentation of this file.
7 
9 public:
11 
12  result_type operator()(const reco::GsfElectronPtr&) const final;
13 
14  double value(const reco::CandidatePtr& cand) const final;
15 
17 
18 private:
23 
25 };
26 
28 
30  : CutApplicatorBase(params),
31  slopeTerm_(params, "slopeTerm"),
32  slopeStart_(params, "slopeStart"),
33  constTerm_(params, "constTerm"),
34  useHEEPIso_(params.getParameter<bool>("useHEEPIso")) {}
35 
37  const float isolTrkPt = useHEEPIso_ ? cand->dr03TkSumPtHEEP() : cand->dr03TkSumPt();
38 
39  const float et = cand->et();
40  const float cutValue =
41  et > slopeStart_(cand) ? slopeTerm_(cand) * (et - slopeStart_(cand)) + constTerm_(cand) : constTerm_(cand);
42  return isolTrkPt < cutValue;
43 }
44 
46  reco::GsfElectronPtr ele(cand);
47  return useHEEPIso_ ? ele->dr03TkSumPtHEEP() : ele->dr03TkSumPt();
48 }
CandidateType candidateType() const final
EBEECutValues slopeStart_
EBEECutValues constTerm_
float dr03TkSumPtHEEP() const
Definition: GsfElectron.h:522
double et() const final
transverse energy
edm::Handle< double > rhoHandle_
float dr03TkSumPt() const
Definition: GsfElectron.h:521
EBEECutValues slopeTerm_
#define DEFINE_EDM_PLUGIN(factory, type, name)
GsfEleTrkPtIsoCut(const edm::ParameterSet &c)
result_type operator()(const reco::GsfElectronPtr &) const final
double value(const reco::CandidatePtr &cand) const final