CMS 3D CMS Logo

IsolatedTrack.h
Go to the documentation of this file.
1 #ifndef __DataFormats_PatCandidates_IsolatedTrack_h__
2 #define __DataFormats_PatCandidates_IsolatedTrack_h__
3 
4 /*
5  \class pat::IsolatedTrack IsolatedTrack.h "DataFormats/PatCandidates/interface/IsolatedTrack.h"
6  \brief Small class to store key info on isolated tracks
7  pat::IsolatedTrack stores important info on isolated tracks. Draws from
8  packedPFCandidates, lostTracks, and generalTracks.
9  \author Bennett Marsh
10 */
11 
18 
19 namespace pat {
20 
22  public:
24  : LeafCandidate(0, LorentzVector(0, 0, 0, 0)),
30  pfNeutralSum_(0.),
31  dz_(0.),
32  dxy_(0.),
33  dzError_(0.),
34  dxyError_(0.),
35  fromPV_(-1),
36  trackQuality_(0),
37  dEdxStrip_(0),
38  dEdxPixel_(0),
39  hitPattern_(reco::HitPattern()),
40  crossedEcalStatus_(std::vector<uint16_t>()),
41  crossedHcalStatus_(std::vector<uint32_t>()),
42  deltaEta_(0),
43  deltaPhi_(0),
47 
48  explicit IsolatedTrack(const PFIsolation& iso,
49  const PFIsolation& miniiso,
50  float caloJetEm,
51  float caloJetHad,
52  bool pfLepOverlap,
53  float pfNeutralSum,
54  const LorentzVector& p4,
55  int charge,
56  int id,
57  float dz,
58  float dxy,
59  float dzError,
60  float dxyError,
61  const reco::HitPattern& hp,
62  float dEdxS,
63  float dEdxP,
64  int fromPV,
65  int tkQual,
66  const std::vector<uint16_t>& ecalst,
67  const std::vector<uint32_t>& hcalst,
68  int dEta,
69  int dPhi,
70  const PackedCandidateRef& pcref,
71  const PackedCandidateRef& refToNearestPF,
72  const PackedCandidateRef& refToNearestLostTrack)
73  : LeafCandidate(charge, p4, Point(0., 0., 0.), id),
74  pfIsolationDR03_(iso),
75  miniIsolation_(miniiso),
76  matchedCaloJetEmEnergy_(caloJetEm),
77  matchedCaloJetHadEnergy_(caloJetHad),
80  dz_(dz),
81  dxy_(dxy),
84  fromPV_(fromPV),
85  trackQuality_(tkQual),
86  dEdxStrip_(dEdxS),
87  dEdxPixel_(dEdxP),
88  hitPattern_(hp),
89  crossedEcalStatus_(ecalst),
90  crossedHcalStatus_(hcalst),
91  deltaEta_(dEta),
92  deltaPhi_(dPhi),
93  packedCandRef_(pcref),
94  nearestPFPackedCandRef_(refToNearestPF),
95  nearestLostTrackPackedCandRef_(refToNearestLostTrack) {}
96 
97  ~IsolatedTrack() override {}
98 
99  const PFIsolation& pfIsolationDR03() const { return pfIsolationDR03_; }
100 
101  const PFIsolation& miniPFIsolation() const { return miniIsolation_; }
102 
105 
106  bool pfLepOverlap() const { return pfLepOverlap_; }
107  float pfNeutralSum() const { return pfNeutralSum_; }
108 
109  float dz() const { return dz_; }
110  float dzError() const override { return dzError_; }
111  float dxy() const { return dxy_; }
112  float dxyError() const override { return dxyError_; }
113 
114  int fromPV() const { return fromPV_; }
115 
116  bool isHighPurityTrack() const {
118  }
121 
122  const reco::HitPattern& hitPattern() const { return hitPattern_; }
123 
124  float dEdxStrip() const { return dEdxStrip_; }
125  float dEdxPixel() const { return dEdxPixel_; }
126 
128  const std::vector<uint16_t>& crossedEcalStatus() const { return crossedEcalStatus_; }
130  const std::vector<uint32_t>& crossedHcalStatus() const { return crossedHcalStatus_; }
131 
134  float deltaEta() const { return float(deltaEta_) / 500.f; }
135  float deltaPhi() const { return float(deltaPhi_) / 500.f; }
136 
140 
141  protected:
144  float matchedCaloJetEmEnergy_; //energy of nearest calojet within a given dR;
149  int fromPV_; //only stored for packedPFCandidates
151  float dEdxStrip_, dEdxPixel_; //in MeV/mm
152 
154 
155  std::vector<uint16_t> crossedEcalStatus_;
156  std::vector<uint32_t> crossedHcalStatus_;
158 
159  PackedCandidateRef packedCandRef_; // stored only for packedPFCands/lostTracks. NULL for generalTracks
162  };
163 
164  typedef std::vector<IsolatedTrack> IsolatedTrackCollection;
165 
166 } // namespace pat
167 
168 #endif
pat::IsolatedTrack::deltaEta
float deltaEta() const
Definition: IsolatedTrack.h:134
pat::IsolatedTrack::hitPattern_
reco::HitPattern hitPattern_
Definition: IsolatedTrack.h:153
pat::IsolatedTrack::crossedEcalStatus_
std::vector< uint16_t > crossedEcalStatus_
Definition: IsolatedTrack.h:155
pat::IsolatedTrack::pfNeutralSum
float pfNeutralSum() const
Definition: IsolatedTrack.h:107
PFIsolation.h
pat::IsolatedTrack::dEdxStrip_
float dEdxStrip_
Definition: IsolatedTrack.h:151
dqmMemoryStats.float
float
Definition: dqmMemoryStats.py:127
reco::TrackBase::tight
Definition: TrackBase.h:153
funct::false
false
Definition: Factorize.h:34
reco::TrackBase::loose
Definition: TrackBase.h:152
pat::IsolatedTrack::IsolatedTrack
IsolatedTrack()
Definition: IsolatedTrack.h:23
pat::IsolatedTrack::nearestLostTrackPackedCandRef_
PackedCandidateRef nearestLostTrackPackedCandRef_
Definition: IsolatedTrack.h:161
pat::IsolatedTrack::trackQuality_
int trackQuality_
Definition: IsolatedTrack.h:150
pat::IsolatedTrack::dEdxStrip
float dEdxStrip() const
Definition: IsolatedTrack.h:124
TrackBase.h
pat::IsolatedTrack::IsolatedTrack
IsolatedTrack(const PFIsolation &iso, const PFIsolation &miniiso, float caloJetEm, float caloJetHad, bool pfLepOverlap, float pfNeutralSum, const LorentzVector &p4, int charge, int id, float dz, float dxy, float dzError, float dxyError, const reco::HitPattern &hp, float dEdxS, float dEdxP, int fromPV, int tkQual, const std::vector< uint16_t > &ecalst, const std::vector< uint32_t > &hcalst, int dEta, int dPhi, const PackedCandidateRef &pcref, const PackedCandidateRef &refToNearestPF, const PackedCandidateRef &refToNearestLostTrack)
Definition: IsolatedTrack.h:48
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
pat::IsolatedTrack::matchedCaloJetHadEnergy_
float matchedCaloJetHadEnergy_
Definition: IsolatedTrack.h:145
HLT_2018_cff.dEta
dEta
Definition: HLT_2018_cff.py:12289
edm::Ref< pat::PackedCandidateCollection >
pat::IsolatedTrack::matchedCaloJetEmEnergy_
float matchedCaloJetEmEnergy_
Definition: IsolatedTrack.h:144
pat::IsolatedTrack::pfIsolationDR03_
PFIsolation pfIsolationDR03_
Definition: IsolatedTrack.h:142
pat::IsolatedTrackCollection
std::vector< IsolatedTrack > IsolatedTrackCollection
Definition: IsolatedTrack.h:164
pat::IsolatedTrack::packedCandRef_
PackedCandidateRef packedCandRef_
Definition: IsolatedTrack.h:159
reco::HitPattern
Definition: HitPattern.h:147
pat::IsolatedTrack::matchedCaloJetHadEnergy
float matchedCaloJetHadEnergy() const
Definition: IsolatedTrack.h:104
Track.h
trackingPlots.hp
hp
Definition: trackingPlots.py:1246
pat::IsolatedTrack::miniIsolation_
PFIsolation miniIsolation_
Definition: IsolatedTrack.h:143
pat::IsolatedTrack::dxy
float dxy() const
Definition: IsolatedTrack.h:111
pat::IsolatedTrack::matchedCaloJetEmEnergy
float matchedCaloJetEmEnergy() const
Definition: IsolatedTrack.h:103
pat::IsolatedTrack::dz_
float dz_
Definition: IsolatedTrack.h:148
pat::IsolatedTrack::deltaPhi_
int deltaPhi_
Definition: IsolatedTrack.h:157
HLT_2018_cff.dPhi
dPhi
Definition: HLT_2018_cff.py:12290
LeafCandidate.h
pat::IsolatedTrack::dEdxPixel
float dEdxPixel() const
Definition: IsolatedTrack.h:125
pat::IsolatedTrack::dzError_
float dzError_
Definition: IsolatedTrack.h:148
Point
Structure Point Contains parameters of Gaussian fits to DMRs.
Definition: DMRtrends.cc:57
pat::IsolatedTrack::hitPattern
const reco::HitPattern & hitPattern() const
Definition: IsolatedTrack.h:122
pat::IsolatedTrack::deltaEta_
int deltaEta_
Definition: IsolatedTrack.h:157
pat::IsolatedTrack::isHighPurityTrack
bool isHighPurityTrack() const
Definition: IsolatedTrack.h:116
pat::IsolatedTrack::dxy_
float dxy_
Definition: IsolatedTrack.h:148
PackedCandidate.h
pat::IsolatedTrack::nearestPFPackedCandRef_
PackedCandidateRef nearestPFPackedCandRef_
Definition: IsolatedTrack.h:160
pat::IsolatedTrack::miniPFIsolation
const PFIsolation & miniPFIsolation() const
Definition: IsolatedTrack.h:101
pat::IsolatedTrack::pfNeutralSum_
float pfNeutralSum_
Definition: IsolatedTrack.h:147
reco::LeafCandidate::p4
const LorentzVector & p4() const final
four-momentum Lorentz vector
Definition: LeafCandidate.h:114
pat::IsolatedTrack::dz
float dz() const
Definition: IsolatedTrack.h:109
pat::IsolatedTrack::isLooseTrack
bool isLooseTrack() const
Definition: IsolatedTrack.h:120
reco::LeafCandidate::charge
int charge() const final
electric charge
Definition: LeafCandidate.h:106
pat
Definition: HeavyIon.h:7
pat::IsolatedTrack::fromPV_
int fromPV_
Definition: IsolatedTrack.h:149
reco::LeafCandidate::LeafCandidate
LeafCandidate()
Definition: LeafCandidate.h:33
HitPattern.h
pat::IsolatedTrack::dxyError
float dxyError() const override
uncertainty on dxy
Definition: IsolatedTrack.h:112
pat::IsolatedTrack::pfIsolationDR03
const PFIsolation & pfIsolationDR03() const
Definition: IsolatedTrack.h:99
pat::IsolatedTrack::crossedHcalStatus
const std::vector< uint32_t > & crossedHcalStatus() const
just the status code part of an HcalChannelStatus for all crossed Hcal cells
Definition: IsolatedTrack.h:130
pat::IsolatedTrack::dzError
float dzError() const override
uncertainty on dz
Definition: IsolatedTrack.h:110
pat::IsolatedTrack
Definition: IsolatedTrack.h:21
pat::PFIsolation
Definition: PFIsolation.h:12
std
Definition: JetResolutionObject.h:76
pat::IsolatedTrack::nearestPFPackedCandRef
const PackedCandidateRef & nearestPFPackedCandRef() const
Definition: IsolatedTrack.h:138
pat::IsolatedTrack::crossedHcalStatus_
std::vector< uint32_t > crossedHcalStatus_
Definition: IsolatedTrack.h:156
pat::IsolatedTrack::fromPV
int fromPV() const
Definition: IsolatedTrack.h:114
pat::IsolatedTrack::deltaPhi
float deltaPhi() const
Definition: IsolatedTrack.h:135
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:31
pat::IsolatedTrack::dxyError_
float dxyError_
Definition: IsolatedTrack.h:148
pat::IsolatedTrack::crossedEcalStatus
const std::vector< uint16_t > & crossedEcalStatus() const
just the status code part of an EcalChannelStatusCode for all crossed Ecal cells
Definition: IsolatedTrack.h:128
pat::IsolatedTrack::dEdxPixel_
float dEdxPixel_
Definition: IsolatedTrack.h:151
reco::LeafCandidate
Definition: LeafCandidate.h:16
pat::IsolatedTrack::packedCandRef
const PackedCandidateRef & packedCandRef() const
Definition: IsolatedTrack.h:137
pat::IsolatedTrack::isTightTrack
bool isTightTrack() const
Definition: IsolatedTrack.h:119
pat::IsolatedTrack::~IsolatedTrack
~IsolatedTrack() override
Definition: IsolatedTrack.h:97
reco::Candidate::LorentzVector
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:36
pat::IsolatedTrack::pfLepOverlap
bool pfLepOverlap() const
Definition: IsolatedTrack.h:106
pat::IsolatedTrack::pfLepOverlap_
bool pfLepOverlap_
Definition: IsolatedTrack.h:146
pat::IsolatedTrack::nearestLostTrackPackedCandRef
const PackedCandidateRef & nearestLostTrackPackedCandRef() const
Definition: IsolatedTrack.h:139
reco::TrackBase::highPurity
Definition: TrackBase.h:154