PhysicsTools
IsolationAlgos
interface
IsoDepositExtractor.h
Go to the documentation of this file.
1
#ifndef IsolationAlgos_IsoDepositExtractor_H
2
#define IsolationAlgos_IsoDepositExtractor_H
3
4
//
5
//
6
//
7
8
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
9
10
#include "
FWCore/Framework/interface/Event.h
"
11
#include "
FWCore/Framework/interface/EventSetup.h
"
12
13
#include "
DataFormats/TrackReco/interface/Track.h
"
14
#include "
DataFormats/TrackReco/interface/TrackFwd.h
"
15
16
#include "
DataFormats/Candidate/interface/Candidate.h
"
17
#include "
DataFormats/Candidate/interface/CandidateFwd.h
"
18
19
#include "
DataFormats/RecoCandidate/interface/IsoDeposit.h
"
20
21
namespace
reco
{
22
namespace
isodeposit {
23
24
class
IsoDepositExtractor
{
25
public
:
27
virtual
~IsoDepositExtractor
(){};
28
31
virtual
void
fillVetos
(
const
edm::Event
&
ev
,
32
const
edm::EventSetup
& evSetup,
33
const
reco::TrackCollection
&
tracks
) = 0;
34
36
virtual
void
initEvent
(
const
edm::Event
&,
const
edm::EventSetup
&) {}
37
40
virtual
reco::IsoDeposit
deposit
(
const
edm::Event
&
ev
,
41
const
edm::EventSetup
& evSetup,
42
const
reco::Track
&
track
)
const
= 0;
43
45
virtual
reco::IsoDeposit
deposit
(
const
edm::Event
&
ev
,
46
const
edm::EventSetup
& evSetup,
47
const
reco::TrackBaseRef
&
track
)
const
{
48
return
deposit
(
ev
, evSetup, *
track
);
49
}
50
53
virtual
reco::IsoDeposit
deposit
(
const
edm::Event
&
ev
,
54
const
edm::EventSetup
& evSetup,
55
const
reco::Candidate
&
track
)
const
{
56
//track-based implementation as default <-- do I want this pure virtual?
57
return
deposit
(
58
ev
,
59
evSetup,
60
reco::Track
(10, 10,
track
.vertex(),
track
.momentum(),
track
.charge(),
reco::Track::CovarianceMatrix
()));
61
}
62
64
virtual
reco::IsoDeposit
deposit
(
const
edm::Event
&
ev
,
65
const
edm::EventSetup
& evSetup,
66
const
reco::CandidateBaseRef
&
track
)
const
{
67
return
deposit
(
ev
, evSetup, *
track
);
68
}
69
73
virtual
std::vector<reco::IsoDeposit>
deposits
(
const
edm::Event
&
ev
,
74
const
edm::EventSetup
& evSetup,
75
const
reco::Track
&
track
)
const
{
76
return
std::vector<reco::IsoDeposit>(1,
deposit
(
ev
, evSetup,
track
));
77
}
78
81
virtual
std::vector<reco::IsoDeposit>
deposits
(
const
edm::Event
&
ev
,
82
const
edm::EventSetup
& evSetup,
83
const
reco::TrackBaseRef
&
track
)
const
{
84
return
deposits
(
ev
, evSetup, *
track
);
85
}
86
89
virtual
std::vector<reco::IsoDeposit>
deposits
(
const
edm::Event
&
ev
,
90
const
edm::EventSetup
& evSetup,
91
const
reco::Candidate
&
track
)
const
{
92
return
deposits
(
93
ev
,
94
evSetup,
95
reco::Track
(10, 10,
track
.vertex(),
track
.momentum(),
track
.charge(),
reco::Track::CovarianceMatrix
()));
96
}
97
100
virtual
std::vector<reco::IsoDeposit>
deposits
(
const
edm::Event
&
ev
,
101
const
edm::EventSetup
& evSetup,
102
const
reco::CandidateBaseRef
&
track
)
const
{
103
return
deposits
(
ev
, evSetup, *
track
);
104
}
105
};
106
}
// namespace isodeposit
107
}
// namespace reco
108
#endif
PDWG_EXOHSCP_cff.tracks
tracks
Definition:
PDWG_EXOHSCP_cff.py:28
HLT_FULL_cff.track
track
Definition:
HLT_FULL_cff.py:11713
reco::isodeposit::IsoDepositExtractor::deposits
virtual std::vector< reco::IsoDeposit > deposits(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &track) const
Definition:
IsoDepositExtractor.h:73
reco
fixed size matrix
Definition:
AlignmentAlgorithmBase.h:45
reco::isodeposit::IsoDepositExtractor::fillVetos
virtual void fillVetos(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackCollection &tracks)=0
reco::isodeposit::IsoDepositExtractor::initEvent
virtual void initEvent(const edm::Event &, const edm::EventSetup &)
perform some constly initialization
Definition:
IsoDepositExtractor.h:36
CandidateFwd.h
reco::isodeposit::IsoDepositExtractor::deposits
virtual std::vector< reco::IsoDeposit > deposits(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::CandidateBaseRef &track) const
Definition:
IsoDepositExtractor.h:100
Track.h
TrackFwd.h
reco::Track
Definition:
Track.h:27
reco::isodeposit::IsoDepositExtractor::~IsoDepositExtractor
virtual ~IsoDepositExtractor()
Destructor.
Definition:
IsoDepositExtractor.h:27
IsoDeposit.h
Event.h
reco::isodeposit::IsoDepositExtractor::deposits
virtual std::vector< reco::IsoDeposit > deposits(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Candidate &track) const
Definition:
IsoDepositExtractor.h:89
edm::EventSetup
Definition:
EventSetup.h:57
reco::Candidate
Definition:
Candidate.h:27
reco::isodeposit::IsoDepositExtractor::deposit
virtual reco::IsoDeposit deposit(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &track) const =0
reco::isodeposit::IsoDepositExtractor::deposit
virtual reco::IsoDeposit deposit(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::CandidateBaseRef &track) const
make single IsoDeposit based on a CandidateBaseRef as input
Definition:
IsoDepositExtractor.h:64
ev
bool ev
Definition:
Hydjet2Hadronizer.cc:95
reco::isodeposit::IsoDepositExtractor::deposit
virtual reco::IsoDeposit deposit(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackBaseRef &track) const
make single IsoDeposit based on trackRef as input
Definition:
IsoDepositExtractor.h:45
EventSetup.h
reco::IsoDeposit
Definition:
IsoDeposit.h:49
edm::RefToBase< reco::Track >
reco::isodeposit::IsoDepositExtractor::deposit
virtual reco::IsoDeposit deposit(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Candidate &track) const
Definition:
IsoDepositExtractor.h:53
Candidate.h
ParameterSet.h
reco::isodeposit::IsoDepositExtractor
Definition:
IsoDepositExtractor.h:24
reco::TrackBase::CovarianceMatrix
math::Error< dimension >::type CovarianceMatrix
5 parameter covariance matrix
Definition:
TrackBase.h:74
edm::Event
Definition:
Event.h:73
reco::isodeposit::IsoDepositExtractor::deposits
virtual std::vector< reco::IsoDeposit > deposits(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackBaseRef &track) const
Definition:
IsoDepositExtractor.h:81
reco::TrackCollection
std::vector< Track > TrackCollection
collection of Tracks
Definition:
TrackFwd.h:14
Generated for CMSSW Reference Manual by
1.8.16