DQMOffline
Lumi
interface
ElectronIdentifier.h
Go to the documentation of this file.
1
#ifndef DQMOFFLINE_LUMI_ELECTRONIDENTIFIER_H
2
#define DQMOFFLINE_LUMI_ELECTRONIDENTIFIER_H
3
4
#include "
FWCore/Framework/interface/MakerMacros.h
"
// definitions for declaring plug-in modules
5
#include "
FWCore/Framework/interface/Frameworkfwd.h
"
// declaration of EDM types
6
#include "
FWCore/Framework/interface/EDAnalyzer.h
"
// EDAnalyzer class
7
#include "
FWCore/Framework/interface/ConsumesCollector.h
"
8
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
// Parameters
9
#include "
FWCore/Utilities/interface/InputTag.h
"
10
11
#include <string>
// string class
12
#include <TMath.h>
13
#include <cassert>
14
15
#include "
DataFormats/EgammaCandidates/interface/ElectronFwd.h
"
16
#include "
DataFormats/EgammaReco/interface/SuperClusterFwd.h
"
17
#include "
DataFormats/EgammaCandidates/interface/GsfElectronFwd.h
"
18
#include "
DataFormats/EgammaCandidates/interface/GsfElectron.h
"
19
#include "
DataFormats/EgammaCandidates/interface/ConversionFwd.h
"
20
#include "
DataFormats/EgammaCandidates/interface/Conversion.h
"
21
#include "
DataFormats/EgammaCandidates/interface/GsfElectron.h
"
22
23
#include "
PhysicsTools/SelectorUtils/interface/CutApplicatorBase.h
"
24
25
#include "
CommonTools/Egamma/interface/EffectiveAreas.h
"
26
#include "
DataFormats/BeamSpot/interface/BeamSpot.h
"
27
28
enum
EleIDCutNames
{
29
SIGMAIETA
,
30
DETAINSEED
,
31
DPHIIN
,
32
HOVERE
,
33
ISO
,
34
ONEOVERE
,
35
MISSINGHITS
,
36
CONVERSION
,
37
};
38
enum
EleIDWorkingPoints
{
VETO
,
MEDIUM
,
LOOSE
,
TIGHT
};
39
enum
EleIDEtaBins
{
BARREL
,
ENDCAP
};
40
class
ElectronIdentifier
{
41
public
:
42
ElectronIdentifier
(
const
edm::ParameterSet
&
c
);
43
float
dEtaInSeed
(
const
reco::GsfElectronPtr
& ele);
44
bool
passID
(
const
reco::GsfElectronPtr
& ele,
45
edm::Handle<reco::BeamSpot>
beamspot
,
46
edm::Handle<reco::ConversionCollection>
conversions
);
47
float
isolation
(
const
reco::GsfElectronPtr
& ele);
48
49
void
setID
(
std::string
ID
);
50
void
setRho
(
double
rho
);
51
52
private
:
53
double
rho_
;
54
int
ID_
;
55
std::array<std::array<std::array<double, 2>, 4>, 8>
cuts_
;
56
// Effective area constants
57
EffectiveAreas
_effectiveAreas
;
58
};
59
60
#endif
EleIDCutNames
EleIDCutNames
Definition:
ElectronIdentifier.h:28
EleIDWorkingPoints
EleIDWorkingPoints
Definition:
ElectronIdentifier.h:38
TIGHT
Definition:
ElectronIdentifier.h:38
ONEOVERE
Definition:
ElectronIdentifier.h:34
ElectronIdentifier::setID
void setID(std::string ID)
Definition:
ElectronIdentifier.cc:120
EDAnalyzer.h
ConversionFwd.h
EffectiveAreas.h
BARREL
Definition:
ElectronIdentifier.h:39
edm::Handle< reco::BeamSpot >
ElectronIdentifier::ElectronIdentifier
ElectronIdentifier(const edm::ParameterSet &c)
Definition:
ElectronIdentifier.cc:24
ElectronIdentifier
Definition:
ElectronIdentifier.h:40
ElectronIdentifier::cuts_
std::array< std::array< std::array< double, 2 >, 4 >, 8 > cuts_
Definition:
ElectronIdentifier.h:55
MakerMacros.h
EffectiveAreas
Definition:
EffectiveAreas.h:7
BeamSpot.h
MISSINGHITS
Definition:
ElectronIdentifier.h:35
ElectronIdentifier::isolation
float isolation(const reco::GsfElectronPtr &ele)
Definition:
ElectronIdentifier.cc:137
DETAINSEED
Definition:
ElectronIdentifier.h:30
beamspot
Definition:
BeamSpotWrite2Txt.h:8
CONVERSION
Definition:
ElectronIdentifier.h:36
GsfElectron.h
ElectronIdentifier::dEtaInSeed
float dEtaInSeed(const reco::GsfElectronPtr &ele)
Definition:
ElectronIdentifier.cc:132
DDAxes::rho
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
ElectronFwd.h
GsfElectronFwd.h
edm::ParameterSet
Definition:
ParameterSet.h:47
align::ID
uint32_t ID
Definition:
Definitions.h:24
ElectronIdentifier::passID
bool passID(const reco::GsfElectronPtr &ele, edm::Handle< reco::BeamSpot > beamspot, edm::Handle< reco::ConversionCollection > conversions)
Definition:
ElectronIdentifier.cc:153
ElectronIdentifier::rho_
double rho_
Definition:
ElectronIdentifier.h:53
DPHIIN
Definition:
ElectronIdentifier.h:31
LOOSE
Definition:
ElectronIdentifier.h:38
HOVERE
Definition:
ElectronIdentifier.h:32
VETO
Definition:
ElectronIdentifier.h:38
ISO
Definition:
ElectronIdentifier.h:33
InputTag.h
edm::Ptr< reco::GsfElectron >
SIGMAIETA
Definition:
ElectronIdentifier.h:29
ElectronIdentifier::ID_
int ID_
Definition:
ElectronIdentifier.h:54
SuperClusterFwd.h
Frameworkfwd.h
ElectronIdentifier::_effectiveAreas
EffectiveAreas _effectiveAreas
Definition:
ElectronIdentifier.h:57
ElectronIdentifier::setRho
void setRho(double rho)
Definition:
ElectronIdentifier.cc:111
ConsumesCollector.h
ParameterSet.h
CutApplicatorBase.h
c
auto & c
Definition:
CAHitNtupletGeneratorKernelsImpl.h:46
MEDIUM
Definition:
ElectronIdentifier.h:38
pwdgSkimBPark_cfi.conversions
conversions
Definition:
pwdgSkimBPark_cfi.py:10
EleIDEtaBins
EleIDEtaBins
Definition:
ElectronIdentifier.h:39
ENDCAP
Definition:
ElectronIdentifier.h:39
Conversion.h
Generated for CMSSW Reference Manual by
1.8.16