14 theDepositLabel(par.getUntrackedParameter<std::
string>(
"DepositLabel")),
15 theVetoSuperClusterMatch(par.getParameter<bool>(
"SCMatch_Veto")),
16 theMissHitVetoSuperClusterMatch(par.getParameter<bool>(
"MissHitSCMatch_Veto")),
17 theDiff_r(par.getParameter<double>(
"Diff_r")),
18 theDiff_z(par.getParameter<double>(
"Diff_z")),
19 theDR_Max(par.getParameter<double>(
"DR_Max")),
20 theDR_Veto(par.getParameter<double>(
"DR_Veto")) {
41 const Photon& cand)
const {
44 deposit.setVeto(
veto(candDir));
45 deposit.addCandEnergy(cand.
pt());
52 for (PFCandidateCollection::const_iterator it = PFCandH->begin(), ed = PFCandH->end(); it != ed; ++it) {
59 ((it->vertex() - vtx).Rho() <
theDiff_r)) {
62 deposit.addDeposit(dirTrk, it->pt());
74 deposit.setVeto(
veto(candDir));
75 deposit.addCandEnergy(cand.
pt());
82 for (PFCandidateCollection::const_iterator it = PFCandH->begin(), ed = PFCandH->end(); it != ed; ++it) {
87 it->superClusterRef().isNonnull() && cand.
superCluster() == it->superClusterRef()) {
91 ((it->vertex() - vtx).Rho() <
theDiff_r)) {
94 deposit.addDeposit(dirTrk, it->pt());
103 const Track& cand)
const {
106 deposit.setVeto(
veto(candDir));
107 deposit.addCandEnergy(cand.
pt());
113 for (PFCandidateCollection::const_iterator it = PFCandH->begin(), ed = PFCandH->end(); it != ed; ++it) {
117 ((it->vertex() - vtx).Rho() <
theDiff_r)) {
120 deposit.addDeposit(dirTrk, it->pt());
132 deposit.setVeto(
veto(candDir));
133 deposit.addCandEnergy(cand.
pt());
139 for (PFCandidateCollection::const_iterator it = PFCandH->begin(), ed = PFCandH->end(); it != ed; ++it) {
147 ((it->vertex() - vtx).Rho() <
theDiff_r)) {
150 deposit.addDeposit(dirTrk, it->pt());
bool isNonnull() const
Checks for non-null.
double pt() const final
transverse momentum
double vz() const override
z coordinate of vertex position
edm::EDGetTokenT< reco::PFCandidateCollection > thePFCandToken
double phi() const
azimuthal angle of momentum vector
const Point & vertex() const override
vertex position (overwritten by PF...)
bool theVetoSuperClusterMatch
GsfTrackRef gsfTrack() const override
reference to a GsfTrack
const Point & vertex() const
reference point on the track. This method is DEPRECATED, please use referencePoint() instead ...
double eta() const
pseudorapidity of momentum vector
reco::SuperClusterRef superCluster() const override
Ref to SuperCluster.
bool theMissHitVetoSuperClusterMatch
double pt() const
track transverse momentum
math::XYZPoint Point
point in the space
Abs< T >::type abs(const T &t)
reco::IsoDeposit depositFromObject(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Photon &cand) const
reco::IsoDeposit::Veto veto(const reco::IsoDeposit::Direction &dir) const
double vz() const
z coordinate of the reference point on track
PFCandWithSuperClusterExtractor()
std::vector< reco::PFCandidate > PFCandidateCollection
collection of PFCandidates
reco::IsoDeposit deposit(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &muon) const override
const Point & vertex() const override
vertex position (overwritten by PF...)
Particle reconstructed by the particle flow algorithm.
#define DEFINE_EDM_PLUGIN(factory, type, name)
double vz() const override
z coordinate of vertex position
double phi() const final
momentum azimuthal angle
SuperClusterRef superCluster() const override
reference to a SuperCluster
reco::SuperClusterRef superClusterRef() const
return a reference to the corresponding SuperCluster if any
double eta() const final
momentum pseudorapidity