CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PFTau.cc
Go to the documentation of this file.
4 
5 //using namespace std;
6 namespace reco {
7 
9 {
14  emFraction_ = NAN;
15  hcalTotOverPLead_ = NAN;
16  hcalMaxOverPLead_ = NAN;
17  hcal3x3OverPLead_ = NAN;
22  caloComp_ = NAN;
23  segComp_ = NAN;
24  muonDecision_ = NAN;
26 }
27 
28 PFTau::PFTau(Charge q, const LorentzVector& p4, const Point& vtx)
29  : BaseTau(q, p4, vtx)
30 {
35 
36  emFraction_ = NAN;
37  hcalTotOverPLead_ = NAN;
38  hcalMaxOverPLead_ = NAN;
39  hcal3x3OverPLead_ = NAN;
44 
45  caloComp_ = NAN;
46  segComp_ = NAN;
47  muonDecision_ = NAN;
49 }
50 
51 PFTau* PFTau::clone() const { return new PFTau(*this); }
52 
53 // Constituent getters and setters
54 const PFJetRef& PFTau::jetRef() const { return jetRef_; }
55 void PFTau::setjetRef(const PFJetRef& x) { jetRef_ = x; }
56 
58  return PFTauTagInfoRef_;
59 }
60 
62 
65 const PFCandidatePtr& PFTau::leadPFCand() const { return leadPFCand_; }
66 
69 void PFTau::setleadPFCand(const PFCandidatePtr& myLead) { leadPFCand_ = myLead;}
70 
73 
74 const std::vector<PFCandidatePtr>& PFTau::signalPFCands() const { return selectedSignalPFCands_; }
75 void PFTau::setsignalPFCands(const std::vector<PFCandidatePtr>& myParts) { selectedSignalPFCands_ = myParts; }
76 const std::vector<PFCandidatePtr>& PFTau::signalPFChargedHadrCands() const { return selectedSignalPFChargedHadrCands_; }
77 void PFTau::setsignalPFChargedHadrCands(const std::vector<PFCandidatePtr>& myParts) { selectedSignalPFChargedHadrCands_ = myParts; }
78 const std::vector<PFCandidatePtr>& PFTau::signalPFNeutrHadrCands() const {return selectedSignalPFNeutrHadrCands_; }
79 void PFTau::setsignalPFNeutrHadrCands(const std::vector<PFCandidatePtr>& myParts) { selectedSignalPFNeutrHadrCands_ = myParts; }
80 const std::vector<PFCandidatePtr>& PFTau::signalPFGammaCands() const { return selectedSignalPFGammaCands_; }
81 void PFTau::setsignalPFGammaCands(const std::vector<PFCandidatePtr>& myParts) { selectedSignalPFGammaCands_ = myParts; }
82 
83 const std::vector<PFCandidatePtr>& PFTau::isolationPFCands() const { return selectedIsolationPFCands_; }
84 void PFTau::setisolationPFCands(const std::vector<PFCandidatePtr>& myParts) { selectedIsolationPFCands_ = myParts;}
85 const std::vector<PFCandidatePtr>& PFTau::isolationPFChargedHadrCands() const { return selectedIsolationPFChargedHadrCands_; }
86 void PFTau::setisolationPFChargedHadrCands(const std::vector<PFCandidatePtr>& myParts) { selectedIsolationPFChargedHadrCands_ = myParts; }
87 const std::vector<PFCandidatePtr>& PFTau::isolationPFNeutrHadrCands() const { return selectedIsolationPFNeutrHadrCands_; }
88 void PFTau::setisolationPFNeutrHadrCands(const std::vector<PFCandidatePtr>& myParts) { selectedIsolationPFNeutrHadrCands_ = myParts; }
89 const std::vector<PFCandidatePtr>& PFTau::isolationPFGammaCands() const { return selectedIsolationPFGammaCands_; }
90 void PFTau::setisolationPFGammaCands(const std::vector<PFCandidatePtr>& myParts) { selectedIsolationPFGammaCands_ = myParts; }
91 
92 // PiZero and decay mode information
93 const std::vector<RecoTauPiZero>& PFTau::signalPiZeroCandidates() const {
94  // Check if the signal pi zeros are already filled
96  // Fill them from the refs
97  for ( size_t i = 0; i < signalPiZeroCandidatesRefs_.size(); ++i ) {
99  }
100  }
102 }
103 
104 void PFTau::setsignalPiZeroCandidates(const std::vector<RecoTauPiZero>& cands) {
105  signalPiZeroCandidates_ = cands;
106 }
107 
110 }
111 
114 }
115 
116 const std::vector<RecoTauPiZero>& PFTau::isolationPiZeroCandidates() const {
117  // Check if the signal pi zeros are already filled
119  // Fill them from the refs
120  for ( size_t i = 0; i < isolationPiZeroCandidatesRefs_.size(); ++i ) {
122  }
123  }
125 }
126 
127 void PFTau::setisolationPiZeroCandidates(const std::vector<RecoTauPiZero>& cands) {
128  signalPiZeroCandidates_ = cands;
129 }
130 
131 // Tau Charged Hadron information
135  } else {
136  return PFRecoTauChargedHadronRef();
137  }
138 }
139 
140 const std::vector<PFRecoTauChargedHadron>& PFTau::signalTauChargedHadronCandidates() const {
141  // Check if the signal tau charged hadrons are already filled
143  // Fill them from the refs
144  for ( size_t i = 0; i < signalTauChargedHadronCandidatesRefs_.size(); ++i ) {
146  }
147  }
149 }
150 
151 void PFTau::setSignalTauChargedHadronCandidates(const std::vector<PFRecoTauChargedHadron>& cands) {
153 }
154 
157 }
158 
159 const std::vector<PFRecoTauChargedHadron>& PFTau::isolationTauChargedHadronCandidates() const {
160  // Check if the isolation tau charged hadrons are already filled
162  // Fill them from the refs
163  for ( size_t i = 0; i < isolationTauChargedHadronCandidatesRefs_.size(); ++i ) {
165  }
166  }
168 }
169 
170 void PFTau::setIsolationTauChargedHadronCandidates(const std::vector<PFRecoTauChargedHadron>& cands) {
172 }
173 
176 }
177 
179 
181  unsigned int nCharged = signalTauChargedHadronCandidates().size();
182  unsigned int nPiZeros = signalPiZeroCandidates().size();
183  // If no tracks exist, this is definitely not a tau!
184  if ( !nCharged ) return kNull;
185  // Find the maximum number of PiZeros our parameterization can hold
186  const unsigned int maxPiZeros = kOneProngNPiZero;
187  // Determine our track index
188  unsigned int trackIndex = (nCharged - 1)*(maxPiZeros + 1);
189  // Check if we handle the given number of tracks
190  if ( trackIndex >= kRareDecayMode ) return kRareDecayMode;
191 
192  if(nPiZeros>maxPiZeros) nPiZeros=maxPiZeros;
193  return static_cast<PFTau::hadronicDecayMode>(trackIndex + nPiZeros);
194 }
195 
197 
198 // Setting information about the isolation region
201 
204 
207 
208 // Electron variables
209 float PFTau::emFraction() const {return emFraction_;}
218 
219 void PFTau::setemFraction(const float& x) {emFraction_ = x;}
228 
229 // Muon variables
230 bool PFTau::hasMuonReference() const { // check if muon ref exists
231  if( leadPFChargedHadrCand_.isNull() ) return false;
232  else if( leadPFChargedHadrCand_.isNonnull() ){
233  reco::MuonRef muonRef = leadPFChargedHadrCand_->muonRef();
234  if( muonRef.isNull() ) return false;
235  else if( muonRef.isNonnull() ) return true;
236  }
237  return false;
238 }
239 
240 float PFTau::caloComp() const {return caloComp_;}
241 float PFTau::segComp() const {return segComp_;}
242 bool PFTau::muonDecision() const {return muonDecision_;}
243 void PFTau::setCaloComp(const float& x) {caloComp_ = x;}
244 void PFTau::setSegComp (const float& x) {segComp_ = x;}
245 void PFTau::setMuonDecision(const bool& x) {muonDecision_ = x;}
246 
248  if ( i!=0 ) return CandidatePtr();
249  return refToPtr(jetRef());
250 }
251 
252 
253 bool PFTau::overlap(const Candidate& theCand) const {
254  const RecoCandidate* theRecoCand = dynamic_cast<const RecoCandidate *>(&theCand);
255  return (theRecoCand!=0 && (checkOverlap(track(), theRecoCand->track())));
256 }
257 
258 void PFTau::dump(std::ostream& out) const {
259 
260  if(!out) return;
261 
262  if (pfTauTagInfoRef().isNonnull()) {
263  out << "Its TauTagInfo constituents :"<<std::endl;
264  out<<"# Tracks "<<pfTauTagInfoRef()->Tracks().size()<<std::endl;
265  out<<"# PF charged hadr. cand's "<<pfTauTagInfoRef()->PFChargedHadrCands().size()<<std::endl;
266  out<<"# PF neutral hadr. cand's "<<pfTauTagInfoRef()->PFNeutrHadrCands().size()<<std::endl;
267  out<<"# PF gamma cand's "<<pfTauTagInfoRef()->PFGammaCands().size()<<std::endl;
268  }
269  if (jetRef().isNonnull()) {
270  out << "Its constituents :"<< std::endl;
271  out<<"# PF charged hadr. cand's "<< jetRef()->chargedHadronMultiplicity()<<std::endl;
272  out<<"# PF neutral hadr. cand's "<< jetRef()->neutralHadronMultiplicity()<<std::endl;
273  out<<"# PF gamma cand's "<< jetRef()->photonMultiplicity()<<std::endl;
274  out<<"# Electron cand's "<< jetRef()->electronMultiplicity()<<std::endl;
275  }
276  out<<"in detail :"<<std::endl;
277 
278  out<<"Pt of the PFTau "<<pt()<<std::endl;
279  const PFCandidatePtr& theLeadPFCand = leadPFChargedHadrCand();
280  if(!theLeadPFCand){
281  out<<"No Lead PFCand "<<std::endl;
282  }else{
283  out<<"Lead PFCand Particle Id " << (*theLeadPFCand).particleId() << std::endl;
284  out<<"Lead PFCand Pt "<<(*theLeadPFCand).pt()<<std::endl;
285  out<<"Lead PFCand Charge "<<(*theLeadPFCand).charge()<<std::endl;
286  out<<"Lead PFCand TrkRef "<<(*theLeadPFCand).trackRef().isNonnull()<<std::endl;
287  out<<"Inner point position (x,y,z) of the PFTau ("<<vx()<<","<<vy()<<","<<vz()<<")"<<std::endl;
288  out<<"Charge of the PFTau "<<charge()<<std::endl;
289  out<<"Et of the highest Et HCAL PFCluster "<<maximumHCALPFClusterEt()<<std::endl;
290  out<<"Number of SignalPFChargedHadrCands = "<<signalPFChargedHadrCands().size()<<std::endl;
291  out<<"Number of SignalPFGammaCands = "<<signalPFGammaCands().size()<<std::endl;
292  out<<"Number of IsolationPFChargedHadrCands = "<<isolationPFChargedHadrCands().size()<<std::endl;
293  out<<"Number of IsolationPFGammaCands = "<<isolationPFGammaCands().size()<<std::endl;
294  out<<"Sum of Pt of charged hadr. PFCandidates in isolation annulus around Lead PF = "<<isolationPFChargedHadrCandsPtSum()<<std::endl;
295  out<<"Sum of Et of gamma PFCandidates in other isolation annulus around Lead PF = "<<isolationPFGammaCandsEtSum()<<std::endl;
296 
297  }
298  // return out;
299 }
300 
301 std::ostream& operator<<(std::ostream& out, const reco::PFTau& tau) {
302 
303  if(!out) return out;
304 
305  out << std::setprecision(3)
306  <<"PFTau "
307  << " charge: " << tau.charge() << " "
308  << " pt:" <<tau.pt()<<" "
309  << " eta:" <<tau.eta()<<" "
310  << " phi:" <<tau.phi()<<" "
311  << " mass:" << tau.mass() << " "
312  << " dm: " << tau.decayMode() << " "
313  <<tau.signalPFCands().size()<<","
314  <<tau.signalPFChargedHadrCands().size()<<","
315  <<tau.signalPFGammaCands().size()<<","
316  <<tau.signalPiZeroCandidates().size()<<","
317  <<tau.signalPFNeutrHadrCands().size()<<" "
318 
319  <<tau.isolationPFCands().size()<<","
320  <<tau.isolationPFChargedHadrCands().size()<<","
321  <<tau.isolationPFGammaCands().size()<<","
322  <<tau.isolationPiZeroCandidates().size()<<","
323  <<tau.isolationPFNeutrHadrCands().size();
324 
325  return out;
326 }
327 
328 }
float ecalStripSumEOverPLead_
Definition: PFTau.h:219
bool hasMuonReference() const
Definition: PFTau.cc:230
float maximumHCALPFClusterEt() const
Et of the highest Et HCAL PFCluster.
Definition: PFTau.cc:205
int Charge
electric charge type
Definition: Candidate.h:39
bool checkOverlap(const R &r1, const R &r2) const
check if two components overlap
Definition: RecoCandidate.h:63
int i
Definition: DBlmapReader.cc:9
std::vector< reco::PFCandidatePtr > selectedIsolationPFNeutrHadrCands_
Definition: PFTau.h:245
RecoTauPiZeroRefVector signalPiZeroCandidatesRefs_
Definition: PFTau.h:248
void setMuonDecision(const bool &)
Definition: PFTau.cc:245
std::vector< reco::RecoTauPiZero > isolationPiZeroCandidates_
Definition: PFTau.h:256
void setelectronPreIDOutput(const float &)
Definition: PFTau.cc:226
float isolationPFGammaCandsEtSum() const
Definition: PFTau.cc:202
std::vector< reco::PFCandidatePtr > selectedSignalPFCands_
Definition: PFTau.h:237
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:250
const PFJetRef & jetRef() const
Definition: PFTau.cc:54
const std::vector< reco::PFCandidatePtr > & isolationPFCands() const
PFCandidates in isolation region.
Definition: PFTau.cc:83
Ptr< typename C::value_type > refToPtr(Ref< C, typename C::value_type, refhelper::FindUsingAdvance< C, typename C::value_type > > const &ref)
Definition: RefToPtr.h:18
float isolationPFChargedHadrCandsPtSum() const
Definition: PFTau.cc:199
void setleadPFChargedHadrCand(const PFCandidatePtr &)
Definition: PFTau.cc:67
void setleadPFNeutralCand(const PFCandidatePtr &)
Definition: PFTau.cc:68
const PFCandidatePtr & leadPFChargedHadrCand() const
Definition: PFTau.cc:63
virtual float pt() const
transverse momentum
void setelectronPreIDDecision(const bool &)
Definition: PFTau.cc:227
size_t size_type
Definition: Candidate.h:34
float segComp() const
Definition: PFTau.cc:241
std::vector< reco::PFRecoTauChargedHadron > signalTauChargedHadronCandidates_
Definition: PFTau.h:259
float hcalTotOverPLead() const
Definition: PFTau.cc:210
bool electronPreIDDecision_
Definition: PFTau.h:205
float maximumHCALPFClusterEt_
Definition: PFTau.h:212
void setisolationPFCands(const std::vector< reco::PFCandidatePtr > &)
Definition: PFTau.cc:84
virtual float phi() const
momentum azimuthal angle
bool electronPreIDDecision() const
Definition: PFTau.cc:217
const std::vector< reco::PFCandidatePtr > & signalPFGammaCands() const
Gamma candidates in signal region.
Definition: PFTau.cc:80
float isolationPFChargedHadrCandsPtSum_
Definition: PFTau.h:210
std::vector< reco::PFRecoTauChargedHadron > isolationTauChargedHadronCandidates_
Definition: PFTau.h:260
float hcal3x3OverPLead() const
Definition: PFTau.cc:212
std::vector< reco::RecoTauPiZero > signalPiZeroCandidates_
Definition: PFTau.h:255
reco::PFCandidatePtr leadPFNeutralCand_
Definition: PFTau.h:232
float emFraction() const
Definition: PFTau.cc:209
std::vector< reco::PFCandidatePtr > selectedSignalPFGammaCands_
Definition: PFTau.h:240
void sethcal3x3OverPLead(const float &)
Definition: PFTau.cc:222
void setisolationPFGammaCandsEtSum(const float &)
Definition: PFTau.cc:203
void setIsolationTauChargedHadronCandidates(const std::vector< PFRecoTauChargedHadron > &)
Definition: PFTau.cc:170
virtual double vy() const
y coordinate of vertex position
void setemFraction(const float &)
Definition: PFTau.cc:219
PFRecoTauChargedHadronRefVector isolationTauChargedHadronCandidatesRefs_
Definition: PFTau.h:252
const std::vector< reco::PFCandidatePtr > & signalPFCands() const
PFCandidates in signal region.
Definition: PFTau.cc:74
const std::vector< reco::PFCandidatePtr > & isolationPFGammaCands() const
Gamma candidates in isolation region.
Definition: PFTau.cc:89
virtual reco::TrackRef track() const
reference to a Track
void setisolationPFNeutrHadrCands(const std::vector< reco::PFCandidatePtr > &)
Definition: PFTau.cc:88
bool muonDecision() const
Definition: PFTau.cc:242
reco::PFJetRef jetRef_
Definition: PFTau.h:229
hadronicDecayMode decayMode() const
Definition: PFTau.cc:178
void setsignalPFChargedHadrCands(const std::vector< reco::PFCandidatePtr > &)
Definition: PFTau.cc:77
float segComp_
Definition: PFTau.h:225
void dump(std::ostream &out=std::cout) const
prints information on this PFTau
Definition: PFTau.cc:258
void setjetRef(const PFJetRef &)
Definition: PFTau.cc:55
CandidatePtr sourceCandidatePtr(size_type i) const
Definition: PFTau.cc:247
void setsignalPiZeroCandidates(const std::vector< RecoTauPiZero > &)
Definition: PFTau.cc:104
std::ostream & operator<<(std::ostream &, BeamSpot beam)
Definition: BeamSpot.cc:71
float leadPFChargedHadrCandsignedSipt_
Definition: PFTau.h:208
PFRecoTauChargedHadronRef leadTauChargedHadronCandidate() const
Definition: PFTau.cc:132
float caloComp() const
Definition: PFTau.cc:240
const std::vector< RecoTauPiZero > & signalPiZeroCandidates() const
Retrieve the association of signal region gamma candidates into candidate PiZeros.
Definition: PFTau.cc:93
hadronicDecayMode calculateDecayMode() const
Definition: PFTau.cc:180
virtual float eta() const
momentum pseudorapidity
RecoTauPiZeroRefVector isolationPiZeroCandidatesRefs_
Definition: PFTau.h:249
double p4[4]
Definition: TauolaWrapper.h:92
void setIsolationPiZeroCandidatesRefs(const RecoTauPiZeroRefVector &)
Definition: PFTau.cc:112
void setDecayMode(const hadronicDecayMode &)
Definition: PFTau.cc:196
void setleadPFCand(const PFCandidatePtr &)
Definition: PFTau.cc:69
void setCaloComp(const float &)
Definition: PFTau.cc:243
void setSignalTauChargedHadronCandidatesRefs(const PFRecoTauChargedHadronRefVector &)
Definition: PFTau.cc:155
virtual int charge() const
electric charge
bool isNull() const
Checks for null.
Definition: Ptr.h:148
void setisolationPFChargedHadrCandsPtSum(const float &)
Definition: PFTau.cc:200
void setleadPFChargedHadrCandsignedSipt(const float &)
Definition: PFTau.cc:72
void setsignalPFCands(const std::vector< reco::PFCandidatePtr > &)
Definition: PFTau.cc:75
hadronicDecayMode decayMode_
Definition: PFTau.h:227
const std::vector< reco::PFCandidatePtr > & isolationPFNeutrHadrCands() const
Definition: PFTau.cc:87
virtual double vz() const
z coordinate of vertex position
void setisolationPiZeroCandidates(const std::vector< RecoTauPiZero > &)
Definition: PFTau.cc:127
const std::vector< reco::PFCandidatePtr > & isolationPFChargedHadrCands() const
Charged candidates in isolation region.
Definition: PFTau.cc:85
float leadPFChargedHadrCandsignedSipt() const
Definition: PFTau.cc:71
bool isNull() const
Checks for null.
Definition: Ref.h:247
void setbremsRecoveryEOverPLead(const float &)
Definition: PFTau.cc:224
bool isNonnull() const
Checks for non-null.
Definition: Ptr.h:152
tuple out
Definition: dbtoconf.py:99
bool muonDecision_
Definition: PFTau.h:204
const std::vector< RecoTauPiZero > & isolationPiZeroCandidates() const
Retrieve the association of isolation region gamma candidates into candidate PiZeros.
Definition: PFTau.cc:116
const PFTauTagInfoRef & pfTauTagInfoRef() const
Definition: PFTau.cc:57
const PFCandidatePtr & leadPFNeutralCand() const
Definition: PFTau.cc:64
void sethcalMaxOverPLead(const float &)
Definition: PFTau.cc:221
edm::Ptr< Candidate > CandidatePtr
persistent reference to an object in a collection of Candidate objects
Definition: CandidateFwd.h:25
void setIsolationTauChargedHadronCandidatesRefs(const PFRecoTauChargedHadronRefVector &)
Definition: PFTau.cc:174
unsigned int nCharged(const GenJet &jet)
void setisolationPFGammaCands(const std::vector< reco::PFCandidatePtr > &)
Definition: PFTau.cc:90
void setSegComp(const float &)
Definition: PFTau.cc:244
PFTau * clone() const
returns a clone of the Candidate object
Definition: PFTau.cc:51
void setsignalPFGammaCands(const std::vector< reco::PFCandidatePtr > &)
Definition: PFTau.cc:81
reco::PFCandidatePtr leadPFChargedHadrCand_
Definition: PFTau.h:231
void setSignalTauChargedHadronCandidates(const std::vector< PFRecoTauChargedHadron > &)
Definition: PFTau.cc:151
const PFCandidatePtr & leadPFCand() const
Definition: PFTau.cc:65
void setisolationPFChargedHadrCands(const std::vector< reco::PFCandidatePtr > &)
Definition: PFTau.cc:86
float bremsRecoveryEOverPLead() const
Definition: PFTau.cc:214
float bremsRecoveryEOverPLead_
Definition: PFTau.h:220
edm::Ref< PFRecoTauChargedHadronCollection > PFRecoTauChargedHadronRef
presistent reference to a PFRecoTauChargedHadron
float hcal3x3OverPLead_
Definition: PFTau.h:218
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:41
float hcalMaxOverPLead_
Definition: PFTau.h:217
PFTauTagInfoRef PFTauTagInfoRef_
Definition: PFTau.h:230
float electronPreIDOutput_
Definition: PFTau.h:221
hadronicDecayMode
Definition: PFTau.h:35
const std::vector< reco::PFCandidatePtr > & signalPFNeutrHadrCands() const
Neutral hadrons in signal region.
Definition: PFTau.cc:78
virtual bool overlap(const Candidate &) const
check overlap with another candidate
Definition: PFTau.cc:253
std::vector< reco::PFCandidatePtr > selectedSignalPFChargedHadrCands_
Definition: PFTau.h:238
void setSignalPiZeroCandidatesRefs(const RecoTauPiZeroRefVector &)
Definition: PFTau.cc:108
void setmaximumHCALPFClusterEt(const float &)
Definition: PFTau.cc:206
std::vector< reco::PFCandidatePtr > selectedIsolationPFChargedHadrCands_
Definition: PFTau.h:244
std::vector< reco::PFCandidatePtr > selectedIsolationPFCands_
Definition: PFTau.h:243
void setecalStripSumEOverPLead(const float &)
Definition: PFTau.cc:223
PFRecoTauChargedHadronRefVector signalTauChargedHadronCandidatesRefs_
Definition: PFTau.h:251
virtual double vx() const
x coordinate of vertex position
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
const std::vector< PFRecoTauChargedHadron > & signalTauChargedHadronCandidates() const
Retrieve the association of signal region PF candidates into candidate PFRecoTauChargedHadrons.
Definition: PFTau.cc:140
math::XYZPoint Point
point in the space
Definition: Candidate.h:45
virtual float mass() const
mass
void sethcalTotOverPLead(const float &)
Definition: PFTau.cc:220
reco::PFCandidatePtr leadPFCand_
Definition: PFTau.h:233
Definition: DDAxes.h:10
std::vector< reco::PFCandidatePtr > selectedIsolationPFGammaCands_
Definition: PFTau.h:246
float emFraction_
Definition: PFTau.h:215
const std::vector< PFRecoTauChargedHadron > & isolationTauChargedHadronCandidates() const
Retrieve the association of isolation region PF candidates into candidate PFRecoTauChargedHadron.
Definition: PFTau.cc:159
void setelectronPreIDTrack(const reco::TrackRef &)
Definition: PFTau.cc:225
float hcalMaxOverPLead() const
Definition: PFTau.cc:211
float electronPreIDOutput() const
Definition: PFTau.cc:216
reco::TrackRef electronPreIDTrack() const
Definition: PFTau.cc:215
void setsignalPFNeutrHadrCands(const std::vector< reco::PFCandidatePtr > &)
Definition: PFTau.cc:79
reco::TrackRef electronPreIDTrack_
Definition: PFTau.h:234
PFTau()
Definition: PFTau.cc:8
float isolationPFGammaCandsEtSum_
Definition: PFTau.h:211
float caloComp_
Definition: PFTau.h:224
const std::vector< reco::PFCandidatePtr > & signalPFChargedHadrCands() const
Charged hadrons in signal region.
Definition: PFTau.cc:76
float ecalStripSumEOverPLead() const
Definition: PFTau.cc:213
std::vector< reco::PFCandidatePtr > selectedSignalPFNeutrHadrCands_
Definition: PFTau.h:239
void setpfTauTagInfoRef(const PFTauTagInfoRef)
Definition: PFTau.cc:61
float hcalTotOverPLead_
Definition: PFTau.h:216