Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
RecoEgamma
ElectronIdentification
plugins
cuts
GsfEleTrkPtIsoCut.cc
Go to the documentation of this file.
1
#include "
PhysicsTools/SelectorUtils/interface/CutApplicatorBase.h
"
2
#include "
DataFormats/EgammaCandidates/interface/GsfElectron.h
"
3
#include "
DataFormats/EgammaCandidates/interface/ConversionFwd.h
"
4
#include "
DataFormats/EgammaCandidates/interface/Conversion.h
"
5
#include "
RecoEgamma/EgammaTools/interface/ConversionTools.h
"
6
7
#include "
RecoEgamma/ElectronIdentification/interface/EBEECutValues.h
"
8
9
class
GsfEleTrkPtIsoCut
:
public
CutApplicatorBase
{
10
public
:
11
GsfEleTrkPtIsoCut
(
const
edm::ParameterSet
&
c
);
12
13
result_type
operator()
(
const
reco::GsfElectronPtr
&)
const
override
final
;
14
15
CandidateType
candidateType
()
const
override final {
16
return
ELECTRON
;
17
}
18
19
private
:
20
21
EBEECutValues
slopeTerm_
;
22
EBEECutValues
slopeStart_
;
23
EBEECutValues
constTerm_
;
24
25
26
edm::Handle<double>
rhoHandle_
;
27
28
};
29
30
DEFINE_EDM_PLUGIN
(
CutApplicatorFactory
,
31
GsfEleTrkPtIsoCut
,
32
"GsfEleTrkPtIsoCut"
);
33
34
GsfEleTrkPtIsoCut::GsfEleTrkPtIsoCut
(
const
edm::ParameterSet
& params) :
35
CutApplicatorBase
(params),
36
slopeTerm_(params,
"slopeTerm"
),
37
slopeStart_(params,
"slopeStart"
),
38
constTerm_(params,
"constTerm"
)
39
{
40
41
}
42
43
44
CutApplicatorBase::result_type
45
GsfEleTrkPtIsoCut::
46
operator()
(
const
reco::GsfElectronPtr
& cand)
const
{
47
48
const
float
isolTrkPt = cand->dr03TkSumPt();
49
50
const
float
et = cand->et();
51
const
float
cutValue = et >
slopeStart_
(cand) ?
slopeTerm_
(cand)*(et-
slopeStart_
(cand)) +
constTerm_
(cand) :
constTerm_
(cand);
52
return
isolTrkPt < cutValue;
53
}
CutApplicatorBase::ELECTRON
Definition:
CutApplicatorBase.h:48
Conversion.h
GsfEleTrkPtIsoCut::slopeStart_
EBEECutValues slopeStart_
Definition:
GsfEleTrkPtIsoCut.cc:22
GsfEleTrkPtIsoCut::constTerm_
EBEECutValues constTerm_
Definition:
GsfEleTrkPtIsoCut.cc:23
edm::Handle< double >
edm::Ptr< reco::GsfElectron >
EBEECutValues
Definition:
EBEECutValues.h:12
edmplugin::PluginFactory
Definition:
PluginFactory.h:31
ConversionTools.h
GsfEleTrkPtIsoCut
Definition:
GsfEleTrkPtIsoCut.cc:9
GsfEleTrkPtIsoCut::rhoHandle_
edm::Handle< double > rhoHandle_
Definition:
GsfEleTrkPtIsoCut.cc:26
GsfEleTrkPtIsoCut::operator()
result_type operator()(const reco::GsfElectronPtr &) const overridefinal
Definition:
GsfEleTrkPtIsoCut.cc:46
GsfEleTrkPtIsoCut::slopeTerm_
EBEECutValues slopeTerm_
Definition:
GsfEleTrkPtIsoCut.cc:21
GsfEleTrkPtIsoCut::candidateType
CandidateType candidateType() const overridefinal
Definition:
GsfEleTrkPtIsoCut.cc:15
GsfElectron.h
CutApplicatorBase
Definition:
CutApplicatorBase.h:45
EBEECutValues.h
compareJSON.const
string const
Definition:
compareJSON.py:14
trackerHits.c
tuple c
Definition:
trackerHits.py:26
ConversionFwd.h
CutApplicatorBase::CandidateType
CandidateType
Definition:
CutApplicatorBase.h:47
edm::ParameterSet
Definition:
ParameterSet.h:35
DEFINE_EDM_PLUGIN
#define DEFINE_EDM_PLUGIN(factory, type, name)
Definition:
PluginFactory.h:101
GsfEleTrkPtIsoCut::GsfEleTrkPtIsoCut
GsfEleTrkPtIsoCut(const edm::ParameterSet &c)
Definition:
GsfEleTrkPtIsoCut.cc:34
CutApplicatorBase.h
Generated for CMSSW Reference Manual by
1.8.5