CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GsfEleDEtaInLinearCut.cc
Go to the documentation of this file.
4 
6 public:
8  CutApplicatorBase(param),
9  slopeTerm_(param,"slopeTerm"),
10  constTerm_(param,"constTerm"),
11  minValue_(param,"minValue")
12  {
13  }
14 
15  result_type operator()(const reco::GsfElectronPtr&) const override final;
16 
17  CandidateType candidateType() const override final {
18  return ELECTRON;
19  }
20 
21 private:
25 };
26 
29  "GsfEleDEtaInLinearCut");
30 
31 CutApplicatorBase::result_type
33 operator()(const reco::GsfElectronPtr& cand) const
34 {
35  float et = cand->energy()!=0. ? cand->et()/cand->energy()*cand->caloEnergy() : 0.;
36  double cutValue = std::max(constTerm_(cand)+slopeTerm_(cand)*et,minValue_(cand));
37  return std::abs(cand->deltaEtaSuperClusterTrackAtVtx())<cutValue;
38 
39 }
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
const EBEECutValues constTerm_
result_type operator()(const reco::GsfElectronPtr &) const overridefinal
const EBEECutValues minValue_
string const
Definition: compareJSON.py:14
GsfEleDEtaInLinearCut(const edm::ParameterSet &param)
#define DEFINE_EDM_PLUGIN(factory, type, name)
const EBEECutValues slopeTerm_
CandidateType candidateType() const overridefinal