src
RecoMuon
MuonIsolation
plugins
CaloExtractorByAssociator.h
Go to the documentation of this file.
1
#ifndef MuonIsolation_CaloExtractorByAssociator_H
2
#define MuonIsolation_CaloExtractorByAssociator_H
3
14
#include <string>
15
16
#include "
PhysicsTools/IsolationAlgos/interface/IsoDepositExtractor.h
"
17
18
#include "
FWCore/Framework/interface/ConsumesCollector.h
"
19
20
#include "
DataFormats/RecoCandidate/interface/IsoDeposit.h
"
21
#include "
DataFormats/TrackReco/interface/Track.h
"
22
#include "
DataFormats/TrackReco/interface/TrackFwd.h
"
23
24
#include "
DataFormats/CaloTowers/interface/CaloTowerCollection.h
"
25
26
#include "
DataFormats/GeometryVector/interface/GlobalPoint.h
"
27
28
#include "
Geometry/CaloGeometry/interface/CaloGeometry.h
"
29
#include "
Geometry/Records/interface/CaloGeometryRecord.h
"
30
#include "
MagneticField/Engine/interface/MagneticField.h
"
31
#include "
MagneticField/Records/interface/IdealMagneticFieldRecord.h
"
32
33
class
TrackAssociatorParameters
;
34
class
TrackDetectorAssociator
;
35
class
MuonServiceProxy
;
36
37
namespace
muonisolation
{
38
39
class
CaloExtractorByAssociator
:
public
reco::isodeposit::IsoDepositExtractor
{
40
public
:
42
CaloExtractorByAssociator
(){};
43
CaloExtractorByAssociator
(
const
edm::ParameterSet
& par,
edm::ConsumesCollector
&& iC);
44
46
~CaloExtractorByAssociator
()
override
;
47
49
void
fillVetos
(
const
edm::Event
&
ev
,
const
edm::EventSetup
& evSetup,
const
reco::TrackCollection
&
tracks
)
override
;
51
reco::IsoDeposit
deposit
(
const
edm::Event
&
ev
,
52
const
edm::EventSetup
& evSetup,
53
const
reco::Track
&
track
)
const override
;
55
std::vector<reco::IsoDeposit>
deposits
(
const
edm::Event
&
ev
,
56
const
edm::EventSetup
& evSetup,
57
const
reco::Track
&
track
)
const override
;
58
59
private
:
61
bool
theUseRecHitsFlag
;
62
64
std::string
theDepositLabel
;
65
67
std::vector<std::string>
theDepositInstanceLabels
;
68
70
std::string
thePropagatorName
;
71
74
double
theThreshold_E
;
75
double
theThreshold_H
;
76
double
theThreshold_HO
;
77
79
double
theDR_Veto_E
;
80
double
theDR_Veto_H
;
81
double
theDR_Veto_HO
;
84
bool
theCenterConeOnCalIntersection
;
86
double
theDR_Max
;
87
90
double
theNoise_EB
;
91
double
theNoise_EE
;
92
double
theNoise_HB
;
93
double
theNoise_HE
;
94
double
theNoise_HO
;
95
double
theNoiseTow_EB
;
96
double
theNoiseTow_EE
;
97
99
std::vector<DetId>
theVetoCollection
;
100
102
MuonServiceProxy
*
theService
;
103
105
TrackAssociatorParameters
*
theAssociatorParameters
;
106
TrackDetectorAssociator
*
theAssociator
;
107
108
edm::ESGetToken<MagneticField, IdealMagneticFieldRecord>
bFieldToken_
;
109
edm::ESGetToken<CaloGeometry, CaloGeometryRecord>
caloGeomToken_
;
110
112
bool
thePrintTimeReport
;
113
115
double
noiseEcal
(
const
CaloTower
&
tower
)
const
;
116
double
noiseHcal
(
const
CaloTower
&
tower
)
const
;
117
double
noiseHOcal
(
const
CaloTower
&
tower
)
const
;
118
double
noiseRecHit
(
const
DetId
& detId)
const
;
119
};
120
121
}
// namespace muonisolation
122
123
#endif
muonisolation::CaloExtractorByAssociator::noiseHcal
double noiseHcal(const CaloTower &tower) const
Definition:
CaloExtractorByAssociator.cc:390
makeMEIFBenchmarkPlots.ev
ev
Definition:
makeMEIFBenchmarkPlots.py:55
CaloTowerCollection.h
muonisolation::CaloExtractorByAssociator::CaloExtractorByAssociator
CaloExtractorByAssociator()
constructors
Definition:
CaloExtractorByAssociator.h:42
muonisolation::CaloExtractorByAssociator::bFieldToken_
edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > bFieldToken_
Definition:
CaloExtractorByAssociator.h:108
muonisolation::CaloExtractorByAssociator::theThreshold_HO
double theThreshold_HO
Definition:
CaloExtractorByAssociator.h:76
reco::IsoDeposit
Definition:
IsoDeposit.h:49
muonisolation::CaloExtractorByAssociator::thePropagatorName
std::string thePropagatorName
propagator name to feed into the track associator
Definition:
CaloExtractorByAssociator.h:70
muonisolation::CaloExtractorByAssociator::theVetoCollection
std::vector< DetId > theVetoCollection
Vector of calo Ids to veto – not used.
Definition:
CaloExtractorByAssociator.h:99
muonisolation::CaloExtractorByAssociator::theNoise_HB
double theNoise_HB
Definition:
CaloExtractorByAssociator.h:92
muonisolation::CaloExtractorByAssociator::theDepositLabel
std::string theDepositLabel
Label of deposit – suggest to set to "" (all info is in collection name anyways) ...
Definition:
CaloExtractorByAssociator.h:64
muonisolation::CaloExtractorByAssociator::theDR_Max
double theDR_Max
max cone size in which towers are considered
Definition:
CaloExtractorByAssociator.h:86
muonisolation::CaloExtractorByAssociator::noiseRecHit
double noiseRecHit(const DetId &detId) const
Definition:
CaloExtractorByAssociator.cc:400
reco::isodeposit::IsoDepositExtractor
Definition:
IsoDepositExtractor.h:24
muonisolation::CaloExtractorByAssociator
Definition:
CaloExtractorByAssociator.h:39
reco::TrackCollection
std::vector< Track > TrackCollection
collection of Tracks
Definition:
TrackFwd.h:14
muonisolation::CaloExtractorByAssociator::theThreshold_H
double theThreshold_H
Definition:
CaloExtractorByAssociator.h:75
muonisolation::CaloExtractorByAssociator::theDepositInstanceLabels
std::vector< std::string > theDepositInstanceLabels
multiple deposits: labels – expect 3 labels beginning with "e", "h", "ho"
Definition:
CaloExtractorByAssociator.h:67
TrackFwd.h
muonisolation::CaloExtractorByAssociator::theDR_Veto_E
double theDR_Veto_E
cone sizes inside which the Et (towers) are not counted
Definition:
CaloExtractorByAssociator.h:79
muonisolation::CaloExtractorByAssociator::theAssociatorParameters
TrackAssociatorParameters * theAssociatorParameters
associator, its' parameters and the propagator
Definition:
CaloExtractorByAssociator.h:105
muonisolation::CaloExtractorByAssociator::theDR_Veto_HO
double theDR_Veto_HO
Definition:
CaloExtractorByAssociator.h:81
muonisolation::CaloExtractorByAssociator::deposits
std::vector< reco::IsoDeposit > deposits(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &track) const override
return deposits for 3 calorimeter subdetectors (ecal, hcal, ho) – in this order
Definition:
CaloExtractorByAssociator.cc:99
muonisolation::CaloExtractorByAssociator::theThreshold_E
double theThreshold_E
Definition:
CaloExtractorByAssociator.h:74
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
MagneticField.h
muonisolation::CaloExtractorByAssociator::theCenterConeOnCalIntersection
bool theCenterConeOnCalIntersection
Definition:
CaloExtractorByAssociator.h:84
edm::ESGetToken< MagneticField, IdealMagneticFieldRecord >
CaloGeometryRecord.h
muonisolation::CaloExtractorByAssociator::theNoise_EE
double theNoise_EE
Definition:
CaloExtractorByAssociator.h:91
muonisolation::CaloExtractorByAssociator::theUseRecHitsFlag
bool theUseRecHitsFlag
use towers or rec hits
Definition:
CaloExtractorByAssociator.h:61
muonisolation::CaloExtractorByAssociator::theNoise_HO
double theNoise_HO
Definition:
CaloExtractorByAssociator.h:94
MuonServiceProxy
Definition:
MuonServiceProxy.h:38
muonisolation
Definition:
CandViewExtractor.cc:14
edm::EventSetup
Definition:
EventSetup.h:59
CaloTower
Definition:
CaloTower.h:26
HLT_2022v12_cff.track
track
Definition:
HLT_2022v12_cff.py:9241
muonisolation::CaloExtractorByAssociator::theAssociator
TrackDetectorAssociator * theAssociator
Definition:
CaloExtractorByAssociator.h:106
DetId
Definition:
DetId.h:17
muonisolation::CaloExtractorByAssociator::theNoise_HE
double theNoise_HE
Definition:
CaloExtractorByAssociator.h:93
tracks
auto const & tracks
cannot be loose
Definition:
CAHitNtupletGeneratorKernelsImpl.h:148
CaloGeometry.h
muonisolation::CaloExtractorByAssociator::theNoiseTow_EE
double theNoiseTow_EE
Definition:
CaloExtractorByAssociator.h:96
muonisolation::CaloExtractorByAssociator::theService
MuonServiceProxy * theService
the event setup proxy, it takes care the services update
Definition:
CaloExtractorByAssociator.h:102
muonisolation::CaloExtractorByAssociator::noiseEcal
double noiseEcal(const CaloTower &tower) const
Determine noise for HCAL and ECAL (take some defaults for the time being)
Definition:
CaloExtractorByAssociator.cc:382
muonisolation::CaloExtractorByAssociator::fillVetos
void fillVetos(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackCollection &tracks) override
allows to set extra vetoes (in addition to the muon) – no-op at this point
Definition:
CaloExtractorByAssociator.cc:77
TrackDetectorAssociator
Definition:
TrackDetectorAssociator.h:44
reco::Track
Definition:
Track.h:27
muonisolation::CaloExtractorByAssociator::theDR_Veto_H
double theDR_Veto_H
Definition:
CaloExtractorByAssociator.h:80
IsoDeposit.h
IsoDepositExtractor.h
hgcalTowerProducer_cfi.tower
tower
Definition:
hgcalTowerProducer_cfi.py:4
Track.h
edm::ParameterSet
Definition:
ParameterSet.h:47
muonisolation::CaloExtractorByAssociator::thePrintTimeReport
bool thePrintTimeReport
flag to turn on/off printing of a time report
Definition:
CaloExtractorByAssociator.h:112
muonisolation::CaloExtractorByAssociator::caloGeomToken_
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > caloGeomToken_
Definition:
CaloExtractorByAssociator.h:109
edm::Event
Definition:
Event.h:73
muonisolation::CaloExtractorByAssociator::theNoiseTow_EB
double theNoiseTow_EB
Definition:
CaloExtractorByAssociator.h:95
muonisolation::CaloExtractorByAssociator::noiseHOcal
double noiseHOcal(const CaloTower &tower) const
Definition:
CaloExtractorByAssociator.cc:395
TrackAssociatorParameters
Definition:
TrackAssociatorParameters.h:43
muonisolation::CaloExtractorByAssociator::~CaloExtractorByAssociator
~CaloExtractorByAssociator() override
destructor
Definition:
CaloExtractorByAssociator.cc:68
ConsumesCollector.h
IdealMagneticFieldRecord.h
muonisolation::CaloExtractorByAssociator::theNoise_EB
double theNoise_EB
Definition:
CaloExtractorByAssociator.h:90
edm::ConsumesCollector
Definition:
ConsumesCollector.h:45
muonisolation::CaloExtractorByAssociator::deposit
reco::IsoDeposit deposit(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &track) const override
no-op: by design of this extractor the deposits are pulled out all at a time
Definition:
CaloExtractorByAssociator.cc:85
GlobalPoint.h
Generated for CMSSW Reference Manual by
1.8.14