src
RecoMuon
MuonIsolation
plugins
CaloExtractor.h
Go to the documentation of this file.
1
#ifndef MuonIsolation_CaloExtractor_H
2
#define MuonIsolation_CaloExtractor_H
3
4
#include <string>
5
6
#include "
PhysicsTools/IsolationAlgos/interface/IsoDepositExtractor.h
"
7
8
#include "
FWCore/Framework/interface/ConsumesCollector.h
"
9
10
#include "
DataFormats/RecoCandidate/interface/IsoDeposit.h
"
11
#include "
DataFormats/TrackReco/interface/Track.h
"
12
#include "
DataFormats/TrackReco/interface/TrackFwd.h
"
13
14
#include "
DataFormats/CaloTowers/interface/CaloTowerCollection.h
"
15
16
#include "
DataFormats/GeometryVector/interface/GlobalPoint.h
"
17
18
#include "
MagneticField/Engine/interface/MagneticField.h
"
19
#include "
MagneticField/Records/interface/IdealMagneticFieldRecord.h
"
20
#include "
Geometry/CaloGeometry/interface/CaloGeometry.h
"
21
#include "
Geometry/Records/interface/CaloGeometryRecord.h
"
22
23
namespace
muonisolation
{
24
25
class
CaloExtractor
:
public
reco::isodeposit::IsoDepositExtractor
{
26
public
:
27
CaloExtractor
(){};
28
CaloExtractor
(
const
edm::ParameterSet
& par,
edm::ConsumesCollector
&& iC);
29
30
~CaloExtractor
()
override
{}
31
32
void
fillVetos
(
const
edm::Event
&
ev
,
const
edm::EventSetup
& evSetup,
const
reco::TrackCollection
&
tracks
)
override
;
33
reco::IsoDeposit
deposit
(
const
edm::Event
&
ev
,
34
const
edm::EventSetup
& evSetup,
35
const
reco::Track
&
track
)
const override
;
36
38
static
GlobalPoint
MuonAtCaloPosition
(
39
const
reco::Track
&
muon
,
const
double
bz,
const
GlobalPoint
& endpos,
bool
fixVxy =
false
,
bool
fixVz =
false
);
40
41
private
:
42
// CaloTower Collection Label
43
edm::EDGetTokenT<CaloTowerCollection>
theCaloTowerCollectionToken
;
44
45
// Label of deposit
46
std::string
theDepositLabel
;
47
48
const
edm::ESGetToken<CaloGeometry, CaloGeometryRecord>
theCaloGeomToken
;
49
const
edm::ESGetToken<MagneticField, IdealMagneticFieldRecord>
theFieldToken
;
50
51
// Cone cuts and thresholds
52
double
theWeight_E
;
53
double
theWeight_H
;
54
double
theThreshold_E
;
55
double
theThreshold_H
;
56
double
theDR_Veto_E
;
57
double
theDR_Veto_H
;
58
double
theDR_Max
;
59
bool
vertexConstraintFlag_XY
;
60
bool
vertexConstraintFlag_Z
;
61
62
// Vector of calo Ids to veto
63
std::vector<DetId>
theVetoCollection
;
64
65
// Determine noise for HCAL and ECAL (take some defaults for the time being)
66
double
noiseEcal
(
const
CaloTower
&
tower
)
const
;
67
double
noiseHcal
(
const
CaloTower
&
tower
)
const
;
68
};
69
70
}
// namespace muonisolation
71
72
#endif
makeMEIFBenchmarkPlots.ev
ev
Definition:
makeMEIFBenchmarkPlots.py:55
CaloTowerCollection.h
reco::IsoDeposit
Definition:
IsoDeposit.h:49
muonisolation::CaloExtractor::theDR_Veto_H
double theDR_Veto_H
Definition:
CaloExtractor.h:57
muonisolation::CaloExtractor::theThreshold_H
double theThreshold_H
Definition:
CaloExtractor.h:55
muonisolation::CaloExtractor
Definition:
CaloExtractor.h:25
muonisolation::CaloExtractor::noiseEcal
double noiseEcal(const CaloTower &tower) const
Definition:
CaloExtractor.cc:264
muonisolation::CaloExtractor::theCaloGeomToken
const edm::ESGetToken< CaloGeometry, CaloGeometryRecord > theCaloGeomToken
Definition:
CaloExtractor.h:48
muonisolation::CaloExtractor::theCaloTowerCollectionToken
edm::EDGetTokenT< CaloTowerCollection > theCaloTowerCollectionToken
Definition:
CaloExtractor.h:43
reco::isodeposit::IsoDepositExtractor
Definition:
IsoDepositExtractor.h:24
reco::TrackCollection
std::vector< Track > TrackCollection
collection of Tracks
Definition:
TrackFwd.h:14
TrackFwd.h
muon
Definition:
MuonCocktails.h:17
muonisolation::CaloExtractor::theWeight_H
double theWeight_H
Definition:
CaloExtractor.h:53
muonisolation::CaloExtractor::vertexConstraintFlag_Z
bool vertexConstraintFlag_Z
Definition:
CaloExtractor.h:60
edm::EDGetTokenT
Definition:
EDGetToken.h:37
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
MagneticField.h
edm::ESGetToken< CaloGeometry, CaloGeometryRecord >
muonisolation::CaloExtractor::noiseHcal
double noiseHcal(const CaloTower &tower) const
Definition:
CaloExtractor.cc:272
CaloGeometryRecord.h
muonisolation::CaloExtractor::theDR_Veto_E
double theDR_Veto_E
Definition:
CaloExtractor.h:56
muonisolation::CaloExtractor::deposit
reco::IsoDeposit deposit(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &track) const override
Definition:
CaloExtractor.cc:87
muonisolation
Definition:
CandViewExtractor.cc:14
edm::EventSetup
Definition:
EventSetup.h:59
CaloTower
Definition:
CaloTower.h:26
muonisolation::CaloExtractor::theDR_Max
double theDR_Max
Definition:
CaloExtractor.h:58
muonisolation::CaloExtractor::CaloExtractor
CaloExtractor()
Definition:
CaloExtractor.h:27
muonisolation::CaloExtractor::theWeight_E
double theWeight_E
Definition:
CaloExtractor.h:52
tracks
auto const & tracks
cannot be loose
Definition:
CAHitNtupletGeneratorKernelsImpl.h:148
muonisolation::CaloExtractor::~CaloExtractor
~CaloExtractor() override
Definition:
CaloExtractor.h:30
CaloGeometry.h
muonisolation::CaloExtractor::theFieldToken
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > theFieldToken
Definition:
CaloExtractor.h:49
reco::Track
Definition:
Track.h:27
muonisolation::CaloExtractor::MuonAtCaloPosition
static GlobalPoint MuonAtCaloPosition(const reco::Track &muon, const double bz, const GlobalPoint &endpos, bool fixVxy=false, bool fixVz=false)
Extrapolate muons to calorimeter-object positions.
Definition:
CaloExtractor.cc:181
IsoDeposit.h
IsoDepositExtractor.h
muonisolation::CaloExtractor::theThreshold_E
double theThreshold_E
Definition:
CaloExtractor.h:54
Point3DBase< float, GlobalTag >
HLT_2022v15_cff.track
track
Definition:
HLT_2022v15_cff.py:9644
Track.h
edm::ParameterSet
Definition:
ParameterSet.h:47
muonisolation::CaloExtractor::fillVetos
void fillVetos(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackCollection &tracks) override
Definition:
CaloExtractor.cc:32
muonisolation::CaloExtractor::vertexConstraintFlag_XY
bool vertexConstraintFlag_XY
Definition:
CaloExtractor.h:59
muonisolation::CaloExtractor::theDepositLabel
std::string theDepositLabel
Definition:
CaloExtractor.h:46
edm::Event
Definition:
Event.h:73
ConsumesCollector.h
IdealMagneticFieldRecord.h
edm::ConsumesCollector
Definition:
ConsumesCollector.h:45
l1tHGCalTowerProducer_cfi.tower
tower
Definition:
l1tHGCalTowerProducer_cfi.py:4
GlobalPoint.h
muonisolation::CaloExtractor::theVetoCollection
std::vector< DetId > theVetoCollection
Definition:
CaloExtractor.h:63
Generated for CMSSW Reference Manual by
1.8.14