Main Page
Namespaces
Classes
Package Documentation
src
RecoEgamma
ElectronIdentification
plugins
cuts
GsfEleE2x5OverE5x5Cut.cc
Go to the documentation of this file.
1
#include "
PhysicsTools/SelectorUtils/interface/CutApplicatorBase.h
"
2
#include "
DataFormats/EgammaCandidates/interface/GsfElectron.h
"
3
#include "
RecoEgamma/ElectronIdentification/interface/EBEECutValues.h
"
4
5
class
GsfEleE2x5OverE5x5Cut
:
public
CutApplicatorBase
{
6
public
:
7
GsfEleE2x5OverE5x5Cut
(
const
edm::ParameterSet
& params) :
8
CutApplicatorBase
(params),
9
minE1x5OverE5x5_
(params,
"minE1x5OverE5x5"
),
10
minE2x5OverE5x5_
(params,
"minE2x5OverE5x5"
){}
11
12
result_type
operator()
(
const
reco::GsfElectronPtr
&)
const
final
;
13
14
double
value
(
const
reco::CandidatePtr
&
cand
)
const
final
;
15
16
CandidateType
candidateType
() const final {
17
return
ELECTRON
;
18
}
19
20
private
:
21
EBEECutValues
minE1x5OverE5x5_
;
22
EBEECutValues
minE2x5OverE5x5_
;
23
24
25
};
26
27
DEFINE_EDM_PLUGIN
(
CutApplicatorFactory
,
28
GsfEleE2x5OverE5x5Cut
,
29
"GsfEleE2x5OverE5x5Cut"
);
30
31
CutApplicatorBase::result_type
32
GsfEleE2x5OverE5x5Cut::
33
operator()
(
const
reco::GsfElectronPtr
&
cand
)
const
{
34
35
return
cand->
e2x5Max
() >
minE2x5OverE5x5_
(cand)*cand->
e5x5
() ||
36
cand->
e1x5
() >
minE1x5OverE5x5_
(cand)*cand->
e5x5
();
37
38
}
39
40
double
GsfEleE2x5OverE5x5Cut::value
(
const
reco::CandidatePtr
&
cand
)
const
{
41
reco::GsfElectronPtr
ele(cand);
42
//btw we broke somebodies nice model of assuming every cut is 1D....
43
//what this is returning is fairly meaningless...
44
return
ele->
e1x5
() ? ele->
e2x5Max
()/ele->
e1x5
() : 0.;
45
}
CutApplicatorBase::ELECTRON
Definition:
CutApplicatorBase.h:48
GsfEleE2x5OverE5x5Cut::candidateType
CandidateType candidateType() const final
Definition:
GsfEleE2x5OverE5x5Cut.cc:16
reco::GsfElectron::e2x5Max
float e2x5Max() const
Definition:
GsfElectron.h:437
EBEECutValuesT< double >
GsfEleE2x5OverE5x5Cut
Definition:
GsfEleE2x5OverE5x5Cut.cc:5
GsfEleE2x5OverE5x5Cut::minE1x5OverE5x5_
EBEECutValues minE1x5OverE5x5_
Definition:
GsfEleE2x5OverE5x5Cut.cc:21
GsfEleE2x5OverE5x5Cut::GsfEleE2x5OverE5x5Cut
GsfEleE2x5OverE5x5Cut(const edm::ParameterSet ¶ms)
Definition:
GsfEleE2x5OverE5x5Cut.cc:7
edmplugin::PluginFactory
Definition:
PluginFactory.h:31
edm::Ptr< reco::GsfElectron >
GsfElectron.h
GsfEleE2x5OverE5x5Cut::operator()
result_type operator()(const reco::GsfElectronPtr &) const final
Definition:
GsfEleE2x5OverE5x5Cut.cc:33
CutApplicatorBase
Definition:
CutApplicatorBase.h:45
EBEECutValues.h
GsfEleE2x5OverE5x5Cut::value
double value(const reco::CandidatePtr &cand) const final
Definition:
GsfEleE2x5OverE5x5Cut.cc:40
reco::GsfElectron::e1x5
float e1x5() const
Definition:
GsfElectron.h:436
reco::GsfElectron::e5x5
float e5x5() const
Definition:
GsfElectron.h:438
CutApplicatorBase::CandidateType
CandidateType
Definition:
CutApplicatorBase.h:47
edm::ParameterSet
Definition:
ParameterSet.h:36
DEFINE_EDM_PLUGIN
#define DEFINE_EDM_PLUGIN(factory, type, name)
Definition:
PluginFactory.h:101
cand
Definition:
decayParser.h:34
CutApplicatorBase.h
GsfEleE2x5OverE5x5Cut::minE2x5OverE5x5_
EBEECutValues minE2x5OverE5x5_
Definition:
GsfEleE2x5OverE5x5Cut.cc:22
Generated for CMSSW Reference Manual by
1.8.11