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
class
TrackAssociatorParameters
;
29
class
TrackDetectorAssociator
;
30
class
MuonServiceProxy
;
31
32
namespace
muonisolation
{
33
34
class
CaloExtractorByAssociator
:
public
reco::isodeposit::IsoDepositExtractor
{
35
public
:
37
CaloExtractorByAssociator
(){};
38
CaloExtractorByAssociator
(
const
edm::ParameterSet
& par,
edm::ConsumesCollector
&& iC);
39
41
~CaloExtractorByAssociator
()
override
;
42
44
void
fillVetos
(
const
edm::Event
&
ev
,
const
edm::EventSetup
& evSetup,
const
reco::TrackCollection
&
tracks
)
override
;
46
reco::IsoDeposit
deposit
(
const
edm::Event
&
ev
,
47
const
edm::EventSetup
& evSetup,
48
const
reco::Track
&
track
)
const override
;
50
std::vector<reco::IsoDeposit>
deposits
(
const
edm::Event
&
ev
,
51
const
edm::EventSetup
& evSetup,
52
const
reco::Track
&
track
)
const override
;
53
54
private
:
56
bool
theUseRecHitsFlag
;
57
59
std::string
theDepositLabel
;
60
62
std::vector<std::string>
theDepositInstanceLabels
;
63
65
std::string
thePropagatorName
;
66
69
double
theThreshold_E
;
70
double
theThreshold_H
;
71
double
theThreshold_HO
;
72
74
double
theDR_Veto_E
;
75
double
theDR_Veto_H
;
76
double
theDR_Veto_HO
;
79
bool
theCenterConeOnCalIntersection
;
81
double
theDR_Max
;
82
85
double
theNoise_EB
;
86
double
theNoise_EE
;
87
double
theNoise_HB
;
88
double
theNoise_HE
;
89
double
theNoise_HO
;
90
double
theNoiseTow_EB
;
91
double
theNoiseTow_EE
;
92
94
std::vector<DetId>
theVetoCollection
;
95
97
MuonServiceProxy
*
theService
;
98
100
TrackAssociatorParameters
*
theAssociatorParameters
;
101
TrackDetectorAssociator
*
theAssociator
;
102
104
bool
thePrintTimeReport
;
105
107
double
noiseEcal
(
const
CaloTower
&
tower
)
const
;
108
double
noiseHcal
(
const
CaloTower
&
tower
)
const
;
109
double
noiseHOcal
(
const
CaloTower
&
tower
)
const
;
110
double
noiseRecHit
(
const
DetId
& detId)
const
;
111
};
112
113
}
// namespace muonisolation
114
115
#endif
muonisolation::CaloExtractorByAssociator::theNoiseTow_EB
double theNoiseTow_EB
Definition:
CaloExtractorByAssociator.h:90
PDWG_EXOHSCP_cff.tracks
tracks
Definition:
PDWG_EXOHSCP_cff.py:28
muonisolation::CaloExtractorByAssociator::thePrintTimeReport
bool thePrintTimeReport
flag to turn on/off printing of a time report
Definition:
CaloExtractorByAssociator.h:104
muonisolation::CaloExtractorByAssociator::theDR_Veto_E
double theDR_Veto_E
cone sizes inside which the Et (towers) are not counted
Definition:
CaloExtractorByAssociator.h:74
muonisolation::CaloExtractorByAssociator::theThreshold_E
double theThreshold_E
Definition:
CaloExtractorByAssociator.h:69
muonisolation::CaloExtractorByAssociator::theNoiseTow_EE
double theNoiseTow_EE
Definition:
CaloExtractorByAssociator.h:91
hgcalTowerProducer_cfi.tower
tower
Definition:
hgcalTowerProducer_cfi.py:3
muonisolation::CaloExtractorByAssociator::thePropagatorName
std::string thePropagatorName
propagator name to feed into the track associator
Definition:
CaloExtractorByAssociator.h:65
muonisolation::CaloExtractorByAssociator::theService
MuonServiceProxy * theService
the event setup proxy, it takes care the services update
Definition:
CaloExtractorByAssociator.h:97
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:384
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::theCenterConeOnCalIntersection
bool theCenterConeOnCalIntersection
Definition:
CaloExtractorByAssociator.h:79
muonisolation::CaloExtractorByAssociator::theNoise_HB
double theNoise_HB
Definition:
CaloExtractorByAssociator.h:87
muonisolation::CaloExtractorByAssociator::theNoise_HO
double theNoise_HO
Definition:
CaloExtractorByAssociator.h:89
DetId
Definition:
DetId.h:17
muonisolation::CaloExtractorByAssociator::theDR_Veto_HO
double theDR_Veto_HO
Definition:
CaloExtractorByAssociator.h:76
Track.h
TrackFwd.h
muonisolation::CaloExtractorByAssociator::theNoise_EE
double theNoise_EE
Definition:
CaloExtractorByAssociator.h:86
muonisolation::CaloExtractorByAssociator::theUseRecHitsFlag
bool theUseRecHitsFlag
use towers or rec hits
Definition:
CaloExtractorByAssociator.h:56
muonisolation::CaloExtractorByAssociator::theAssociator
TrackDetectorAssociator * theAssociator
Definition:
CaloExtractorByAssociator.h:101
reco::Track
Definition:
Track.h:27
muonisolation::CaloExtractorByAssociator::theVetoCollection
std::vector< DetId > theVetoCollection
Vector of calo Ids to veto – not used.
Definition:
CaloExtractorByAssociator.h:94
muonisolation::CaloExtractorByAssociator::theNoise_HE
double theNoise_HE
Definition:
CaloExtractorByAssociator.h:88
IsoDeposit.h
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
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
IsoDepositExtractor.h
muonisolation::CaloExtractorByAssociator::noiseHcal
double noiseHcal(const CaloTower &tower) const
Definition:
CaloExtractorByAssociator.cc:392
muonisolation::CaloExtractorByAssociator::theDR_Veto_H
double theDR_Veto_H
Definition:
CaloExtractorByAssociator.h:75
edm::ParameterSet
Definition:
ParameterSet.h:36
muonisolation::CaloExtractorByAssociator::theNoise_EB
double theNoise_EB
Definition:
CaloExtractorByAssociator.h:85
TrackDetectorAssociator
Definition:
TrackDetectorAssociator.h:49
CaloTower
Definition:
CaloTower.h:26
muonisolation::CaloExtractorByAssociator::theDepositLabel
std::string theDepositLabel
Label of deposit – suggest to set to "" (all info is in collection name anyways)
Definition:
CaloExtractorByAssociator.h:59
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
edm::EventSetup
Definition:
EventSetup.h:57
muonisolation::CaloExtractorByAssociator::noiseRecHit
double noiseRecHit(const DetId &detId) const
Definition:
CaloExtractorByAssociator.cc:402
muonisolation::CaloExtractorByAssociator::theDR_Max
double theDR_Max
max cone size in which towers are considered
Definition:
CaloExtractorByAssociator.h:81
muonisolation
Definition:
CandViewExtractor.h:16
CaloTowerCollection.h
muonisolation::CaloExtractorByAssociator::theDepositInstanceLabels
std::vector< std::string > theDepositInstanceLabels
multiple deposits: labels – expect 3 labels beginning with "e", "h", "ho"
Definition:
CaloExtractorByAssociator.h:62
ev
bool ev
Definition:
Hydjet2Hadronizer.cc:95
muonisolation::CaloExtractorByAssociator::theThreshold_H
double theThreshold_H
Definition:
CaloExtractorByAssociator.h:70
muonisolation::CaloExtractorByAssociator::theAssociatorParameters
TrackAssociatorParameters * theAssociatorParameters
associator, its' parameters and the propagator
Definition:
CaloExtractorByAssociator.h:100
reco::IsoDeposit
Definition:
IsoDeposit.h:49
HLT_2018_cff.track
track
Definition:
HLT_2018_cff.py:10352
muonisolation::CaloExtractorByAssociator::theThreshold_HO
double theThreshold_HO
Definition:
CaloExtractorByAssociator.h:71
ConsumesCollector.h
reco::isodeposit::IsoDepositExtractor
Definition:
IsoDepositExtractor.h:24
MuonServiceProxy
Definition:
MuonServiceProxy.h:38
muonisolation::CaloExtractorByAssociator::noiseHOcal
double noiseHOcal(const CaloTower &tower) const
Definition:
CaloExtractorByAssociator.cc:397
muonisolation::CaloExtractorByAssociator
Definition:
CaloExtractorByAssociator.h:34
edm::Event
Definition:
Event.h:73
GlobalPoint.h
reco::TrackCollection
std::vector< Track > TrackCollection
collection of Tracks
Definition:
TrackFwd.h:14
edm::ConsumesCollector
Definition:
ConsumesCollector.h:39
muonisolation::CaloExtractorByAssociator::~CaloExtractorByAssociator
~CaloExtractorByAssociator() override
destructor
Definition:
CaloExtractorByAssociator.cc:68
TrackAssociatorParameters
Definition:
TrackAssociatorParameters.h:34
muonisolation::CaloExtractorByAssociator::CaloExtractorByAssociator
CaloExtractorByAssociator()
constructors
Definition:
CaloExtractorByAssociator.h:37
Generated for CMSSW Reference Manual by
1.8.16