CMS 3D CMS Logo

Tau.h
Go to the documentation of this file.
1 #ifndef DataFormats_PatCandidates_Tau_h
2 #define DataFormats_PatCandidates_Tau_h
3 
26 
30 
32 
33 // Define typedefs for convenience
34 namespace pat {
35  class Tau;
36  typedef std::vector<Tau> TauCollection;
40 } // namespace pat
41 
42 namespace reco {
44  std::ostream& operator<<(std::ostream& out, const pat::Tau& obj);
45  // bool sortByPt(const CandidatePtrVector::const_iterator &lhs, const CandidatePtrVector::const_iterator &rhs) { return (*lhs)->pt() < (*rhs)->pt(); }
46 } // namespace reco
47 
48 // Class definition
49 namespace pat {
50 
51  class PATTauSlimmer;
52 
53  class Tau : public Lepton<reco::BaseTau> {
57  friend class PATTauProducer;
58 
59  public:
60  typedef std::pair<std::string, float> IdPair;
61 
63  Tau();
65  Tau(const reco::BaseTau& aTau);
67  Tau(const edm::RefToBase<reco::BaseTau>& aTauRef);
69  Tau(const edm::Ptr<reco::BaseTau>& aTauRef);
71  ~Tau() override;
72 
74  Tau* clone() const override { return new Tau(*this); }
75 
76  // ---- methods for content embedding ----
78  const reco::TrackRefVector& isolationTracks() const override;
80  reco::TrackRef leadTrack() const override;
82  const reco::TrackRefVector& signalTracks() const override;
84  void embedIsolationTracks();
86  void embedLeadTrack();
88  void embedSignalTracks();
91  void embedLeadPFCand();
97  void embedSignalPFCands();
105  void embedIsolationPFCands();
112 
113  // ---- matched GenJet methods ----
115  const reco::GenJet* genJet() const;
117  void setGenJet(const reco::GenJetRef& ref);
118 
119  // ---- PFTau accessors (getters only) ----
121  bool isPFTau() const { return !pfSpecific_.empty(); }
123  const pat::tau::TauPFSpecific& pfSpecific() const;
124  const pat::tau::TauPFEssential& pfEssential() const;
127  const reco::JetBaseRef& pfJetRef() const { return pfSpecific().pfJetRef_; }
142  const reco::PFCandidatePtr leadPFCand() const;
145  const std::vector<reco::PFCandidatePtr>& signalPFCands() const;
148  const std::vector<reco::PFCandidatePtr>& signalPFChargedHadrCands() const;
151  const std::vector<reco::PFCandidatePtr>& signalPFNeutrHadrCands() const;
154  const std::vector<reco::PFCandidatePtr>& signalPFGammaCands() const;
157  const std::vector<reco::PFRecoTauChargedHadron>& signalTauChargedHadronCandidates() const;
160  const std::vector<reco::RecoTauPiZero>& signalPiZeroCandidates() const;
163  const std::vector<reco::PFCandidatePtr>& isolationPFCands() const;
166  const std::vector<reco::PFCandidatePtr>& isolationPFChargedHadrCands() const;
169  const std::vector<reco::PFCandidatePtr>& isolationPFNeutrHadrCands() const;
172  const std::vector<reco::PFCandidatePtr>& isolationPFGammaCands() const;
175  const std::vector<reco::PFRecoTauChargedHadron>& isolationTauChargedHadronCandidates() const;
178  const std::vector<reco::RecoTauPiZero>& isolationPiZeroCandidates() const;
190  float emFraction() const { return pfSpecific().emFraction_; }
193  float hcalTotOverPLead() const { return pfSpecific().hcalTotOverPLead_; }
196  float hcalMaxOverPLead() const { return pfSpecific().hcalMaxOverPLead_; }
199  float hcal3x3OverPLead() const { return pfSpecific().hcal3x3OverPLead_; }
217  float caloComp() const { return pfSpecific().caloComp_; }
220  float segComp() const { return pfSpecific().segComp_; }
223  bool muonDecision() const { return pfSpecific().muonDecision_; }
224 
229  const reco::CandidatePtr leadNeutralCand() const;
231  const reco::CandidatePtr leadCand() const;
234  bool ExistSignalCands() const;
235  bool ExistIsolationCands() const;
258 
266 
269  size_t numberOfSourceCandidatePtrs() const override;
272 
277  float dxy() const { return pfEssential().dxy_; }
278  float dxy_error() const { return pfEssential().dxy_error_; }
279  float dxy_Sig() const;
280  const reco::VertexRef& primaryVertex() const { return pfEssential().pv_; }
283  bool hasSecondaryVertex() const { return pfEssential().hasSV_; }
285  float flightLengthSig() const { return pfEssential().flightLengthSig_; }
287  const reco::VertexRef& secondaryVertex() const { return pfEssential().sv_; }
290  float ip3d() const { return pfEssential().ip3d_; }
291  float ip3d_error() const { return pfEssential().ip3d_error_; }
292  float ip3d_Sig() const;
293 
297  float ecalEnergy() const { return pfEssential().ecalEnergy_; }
299  float hcalEnergy() const { return pfEssential().hcalEnergy_; }
302 
318  float emFraction_MVA() const { return pfEssential().emFraction_; }
319 
323  float etaetaMoment() const;
324  float phiphiMoment() const;
325  float etaphiMoment() const;
326 
328  int decayMode() const { return pfEssential().decayMode_; }
330  void setDecayMode(int);
331 
332  // ---- methods for tau ID ----
338  float tauID(const std::string& name) const;
339  float tauID(const char* name) const { return tauID(std::string(name)); }
341  bool isTauIDAvailable(const std::string& name) const;
344  const std::vector<IdPair>& tauIDs() const { return tauIDs_; }
347  void setTauIDs(const std::vector<IdPair>& ids) { tauIDs_ = ids; }
348 
350  friend std::ostream& reco::operator<<(std::ostream& out, const Tau& obj);
351 
354  const std::vector<std::string> availableJECSets() const;
355  // returns the available JEC Levels for a given jecSet
356  const std::vector<std::string> availableJECLevels(const int& set = 0) const;
357  // returns the available JEC Levels for a given jecSet
358  const std::vector<std::string> availableJECLevels(const std::string& set) const {
359  return availableJECLevels(jecSet(set));
360  };
363  bool jecSetsAvailable() const { return !jec_.empty(); }
366  bool jecSetAvailable(const std::string& set) const { return (jecSet(set) >= 0); };
369  bool jecSetAvailable(const unsigned int& set) const { return (set < jec_.size()); };
372  return currentJECSet_ < jec_.size() ? jec_.at(currentJECSet_).jecSet() : std::string("ERROR");
373  }
376  return currentJECSet_ < jec_.size() ? jec_.at(currentJECSet_).jecLevel(currentJECLevel_) : std::string("ERROR");
377  }
380  float jecFactor(const std::string& level, const std::string& set = "") const;
383  float jecFactor(const unsigned int& level, const unsigned int& set = 0) const;
386  Tau correctedTauJet(const std::string& level, const std::string& set = "") const;
389  Tau correctedTauJet(const unsigned int& level, const unsigned int& set = 0) const;
392  const LorentzVector& correctedP4(const std::string& level, const std::string& set = "") const {
393  return correctedTauJet(level, set).p4();
394  }
397  const LorentzVector& correctedP4(const unsigned int& level, const unsigned int& set = 0) const {
398  return correctedTauJet(level, set).p4();
399  }
400 
401  friend class PATTauSlimmer;
402 
403  protected:
406  int jecSet(const std::string& label) const;
408  void currentJECSet(const unsigned int& set) { currentJECSet_ = set; };
410  void currentJECLevel(const unsigned int& level) { currentJECLevel_ = level; };
412  void addJECFactors(const TauJetCorrFactors& jec) { jec_.push_back(jec); };
414  void initializeJEC(unsigned int level, const unsigned int set = 0);
415 
416  private:
418  void initFromBaseTau(const reco::BaseTau& aTau);
419  // ---- for content embedding ----
421  std::vector<reco::Track> isolationTracks_;
424  std::vector<reco::Track> leadTrack_;
426  std::vector<reco::Track> signalTracks_;
428  // specific for PFTau
429  std::vector<reco::PFCandidate> leadPFCand_;
431  std::vector<reco::PFCandidate> leadPFChargedHadrCand_;
433  std::vector<reco::PFCandidate> leadPFNeutralCand_;
435 
436  std::vector<reco::PFCandidate> signalPFCands_;
439  std::vector<reco::PFCandidate> signalPFChargedHadrCands_;
442  std::vector<reco::PFCandidate> signalPFNeutralHadrCands_;
445  std::vector<reco::PFCandidate> signalPFGammaCands_;
448  std::vector<reco::PFCandidate> isolationPFCands_;
451  std::vector<reco::PFCandidate> isolationPFChargedHadrCands_;
454  std::vector<reco::PFCandidate> isolationPFNeutralHadrCands_;
457  std::vector<reco::PFCandidate> isolationPFGammaCands_;
460 
461  // ---- matched GenJet holder ----
462  std::vector<reco::GenJet> genJet_;
463 
464  // ---- tau ID's holder ----
465  std::vector<IdPair> tauIDs_;
466 
467  // ---- PFTau specific variables ----
469  std::vector<pat::tau::TauPFSpecific> pfSpecific_;
470 
471  // ---- energy scale correction factors ----
472  // energy scale correction factors; the string carries a potential label if
473  // more then one set of correction factors is embedded. The label corresponds
474  // to the label of the jetCorrFactors module that has been embedded.
475  std::vector<pat::TauJetCorrFactors> jec_;
476  // currently applied set of jet energy correction factors (i.e. the index in
477  // jetEnergyCorrections_)
478  unsigned int currentJECSet_;
479  // currently applied jet energy correction level
480  unsigned int currentJECLevel_;
481 
482  // ---- references to packed pf candidates -----
486 
490 
491  // -- essential info to keep
492 
493  std::vector<pat::tau::TauPFEssential> pfEssential_;
494  };
495 } // namespace pat
496 
497 #endif
pat::Tau::isolationTauChargedHadronCandidates
const std::vector< reco::PFRecoTauChargedHadron > & isolationTauChargedHadronCandidates() const
pat::Tau::jecSetsAvailable
bool jecSetsAvailable() const
Definition: Tau.h:363
personalPlayback.level
level
Definition: personalPlayback.py:22
pat::Tau::leadChargedHadrCand
const reco::CandidatePtr leadChargedHadrCand() const
edm::RefProd
Definition: EDProductfwd.h:25
pat::Tau::ip3d
float ip3d() const
Definition: Tau.h:290
pat::Tau::isolationPFNeutrHadrCands
const std::vector< reco::PFCandidatePtr > & isolationPFNeutrHadrCands() const
pat::Tau::hcalTotOverPLead
float hcalTotOverPLead() const
Definition: Tau.h:193
pat::tau::TauPFEssential::svPos_
Point svPos_
Definition: TauPFEssential.h:50
pat::Tau::emFraction
float emFraction() const
Definition: Tau.h:190
pat::Tau::setSignalGammaCands
void setSignalGammaCands(const reco::CandidatePtrVector &ptrs)
Definition: Tau.h:262
pat::Tau::Tau
Tau()
default constructor
pat::tau::TauPFEssential::hasSV_
bool hasSV_
Definition: TauPFEssential.h:46
GenJetCollection.h
pat::Tau::currentJECLevel_
unsigned int currentJECLevel_
Definition: Tau.h:480
pat::Tau::initFromBaseTau
void initFromBaseTau(const reco::BaseTau &aTau)
helper to avoid code duplication in constructors
pat::Tau::embedSignalPFCands
void embedSignalPFCands()
method to store the signal candidates internally
pat::Tau::dxy_Sig
float dxy_Sig() const
pat::Tau::embeddedLeadPFChargedHadrCand_
bool embeddedLeadPFChargedHadrCand_
Definition: Tau.h:432
mps_fire.i
i
Definition: mps_fire.py:428
pat::tau::TauPFSpecific::ecalStripSumEOverPLead_
float ecalStripSumEOverPLead_
Definition: TauPFSpecific.h:53
pat::Tau::isolationChargedHadrCandPtrs_
reco::CandidatePtrVector isolationChargedHadrCandPtrs_
Definition: Tau.h:487
reco::GenJet
Jets made from MC generator particles.
Definition: GenJet.h:23
pat::Tau::setGenJet
void setGenJet(const reco::GenJetRef &ref)
set the matched GenJet
pat::tau::TauPFEssential::sv_
reco::VertexRef sv_
Definition: TauPFEssential.h:49
pat::tau::TauPFEssential::dxy_error_
float dxy_error_
Definition: TauPFEssential.h:41
pat::tau::TauPFSpecific::isolationPFGammaCandsEtSum_
float isolationPFGammaCandsEtSum_
Definition: TauPFSpecific.h:46
pat::tau::TauPFSpecific::maximumHCALPFClusterEt_
float maximumHCALPFClusterEt_
Definition: TauPFSpecific.h:47
pat::Tau::leadTrack_
std::vector< reco::Track > leadTrack_
Definition: Tau.h:424
pat::Tau::leadPFNeutralCand
const reco::PFCandidatePtr leadPFNeutralCand() const
pat::Tau::leadingTrackNormChi2
float leadingTrackNormChi2() const
return normalized chi2 of leading track
Definition: Tau.h:301
pat::tau::TauPFEssential::flightLengthSig_
float flightLengthSig_
Definition: TauPFEssential.h:48
pat::Tau::ecalStripSumEOverPLead
float ecalStripSumEOverPLead() const
Definition: Tau.h:202
Lepton
Definition: Lepton.py:1
pat::Tau::leadCand
const reco::CandidatePtr leadCand() const
return the PFCandidate if available (reference or embedded), or the PackedPFCandidate on miniAOD
pat::tau::TauPFSpecific::isolationPFChargedHadrCandsPtSum_
float isolationPFChargedHadrCandsPtSum_
Definition: TauPFSpecific.h:45
pat::Tau::flightLength
const pat::tau::TauPFEssential::Vector & flightLength() const
Definition: Tau.h:284
pat::Tau::correctedP4
const LorentzVector & correctedP4(const unsigned int &level, const unsigned int &set=0) const
Definition: Tau.h:397
pat::Tau::dxy_error
float dxy_error() const
Definition: Tau.h:278
pat::Tau::isolationPFChargedHadrCands_
std::vector< reco::PFCandidate > isolationPFChargedHadrCands_
Definition: Tau.h:451
pat::tau::TauPFEssential::etaAtEcalEntranceLeadChargedCand_
float etaAtEcalEntranceLeadChargedCand_
Definition: TauPFEssential.h:61
pat::tau::TauPFSpecific::hcalTotOverPLead_
float hcalTotOverPLead_
Definition: TauPFSpecific.h:50
pat::Tau::setIsolationNeutralHadrCands
void setIsolationNeutralHadrCands(const reco::CandidatePtrVector &ptrs)
Definition: Tau.h:264
PFCandidate.h
pat::Tau::ecalEnergyLeadChargedHadrCand
float ecalEnergyLeadChargedHadrCand() const
Definition: Tau.h:306
pat::Tau::jecSetAvailable
bool jecSetAvailable(const unsigned int &set) const
Definition: Tau.h:369
pat::Tau::decayMode
int decayMode() const
reconstructed tau decay mode (specific to PFTau)
Definition: Tau.h:328
pat::Tau::signalGammaCandPtrs_
reco::CandidatePtrVector signalGammaCandPtrs_
Definition: Tau.h:485
pat::Tau::embedLeadPFChargedHadrCand
void embedLeadPFChargedHadrCand()
method to store the leading charged hadron candidate internally
TauPFSpecific.h
pat::PATTauProducer
Produces pat::Tau's.
Definition: PATTauProducer.cc:56
pat::Tau::embedSignalPFNeutralHadrCands
void embedSignalPFNeutralHadrCands()
method to store the signal neutral hadrons candidates internally
BaseTau.h
pat::Tau::maximumHCALPFClusterEt
float maximumHCALPFClusterEt() const
Definition: Tau.h:187
pat::Tau
Analysis-level tau class.
Definition: Tau.h:53
pat::Tau::embeddedSignalPFCands_
bool embeddedSignalPFCands_
Definition: Tau.h:437
pat::Tau::isolationNeutralHadrCandPtrs_
reco::CandidatePtrVector isolationNeutralHadrCandPtrs_
Definition: Tau.h:488
pat::Tau::embeddedSignalTracks_
bool embeddedSignalTracks_
Definition: Tau.h:425
pat::Tau::electronPreIDOutput
float electronPreIDOutput() const
Definition: Tau.h:211
pat::Tau::dxy
float dxy() const
Definition: Tau.h:277
pat::Tau::isolationPFNeutralHadrCandsTransientPtrs_
edm::AtomicPtrCache< std::vector< reco::PFCandidatePtr > > isolationPFNeutralHadrCandsTransientPtrs_
Definition: Tau.h:456
pat::tau::TauPFEssential::ptLeadChargedCand_
float ptLeadChargedCand_
Definition: TauPFEssential.h:62
pat::Tau::emFraction_MVA
float emFraction_MVA() const
return emFraction_MVA
Definition: Tau.h:318
pat::tau::TauPFEssential::flightLength_
Vector flightLength_
Definition: TauPFEssential.h:47
pat::Tau::signalChargedHadrCands
reco::CandidatePtrVector signalChargedHadrCands() const
pat::Tau::embedLeadPFNeutralCand
void embedLeadPFNeutralCand()
method to store the leading neutral candidate internally
pat::Tau::signalPFGammaCands_
std::vector< reco::PFCandidate > signalPFGammaCands_
Definition: Tau.h:445
pat::Tau::leadPFChargedHadrCandsignedSipt
float leadPFChargedHadrCandsignedSipt() const
Definition: Tau.h:136
pat::Tau::embeddedLeadPFCand_
bool embeddedLeadPFCand_
Definition: Tau.h:430
pat::Tau::flightLengthCov
pat::tau::TauPFEssential::CovMatrix flightLengthCov() const
pat::tau::TauPFSpecific::pfJetRef_
reco::JetBaseRef pfJetRef_
Definition: TauPFSpecific.h:28
pat::Tau::pfEssential_
std::vector< pat::tau::TauPFEssential > pfEssential_
Definition: Tau.h:493
TauJetCorrFactors.h
pat::tau::TauPFEssential::pv_
reco::VertexRef pv_
Definition: TauPFEssential.h:43
pat::tau::TauPFEssential::ip3d_
float ip3d_
Definition: TauPFEssential.h:52
edm::RefVector
Definition: EDProductfwd.h:27
pat::Tau::jec_
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:475
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:46
Tau
Definition: Tau.py:1
Lepton.h
pat::Tau::addJECFactors
void addJECFactors(const TauJetCorrFactors &jec)
add more sets of energy correction factors
Definition: Tau.h:412
pat::Tau::signalNeutrHadrCands
reco::CandidatePtrVector signalNeutrHadrCands() const
pat::Tau::hasSecondaryVertex
bool hasSecondaryVertex() const
Definition: Tau.h:283
pat::Tau::isolationPFCands_
std::vector< reco::PFCandidate > isolationPFCands_
Definition: Tau.h:448
pat::Tau::leadPFChargedHadrCand_
std::vector< reco::PFCandidate > leadPFChargedHadrCand_
Definition: Tau.h:431
pat::Tau::leadTrack
reco::TrackRef leadTrack() const override
override the reco::BaseTau::leadTrack method, to access the internal storage of the leading track
pat::Tau::tauID
float tauID(const std::string &name) const
pat::tau::TauPFEssential::svCov_
CovMatrix svCov_
Definition: TauPFEssential.h:51
edm::Ref
Definition: AssociativeIterator.h:58
pat::Tau::currentJECSet
std::string currentJECSet() const
returns the label of the current set of jet energy corrections
Definition: Tau.h:371
pat::Tau::isolationCands
reco::CandidatePtrVector isolationCands() const
pat::Tau::caloComp
float caloComp() const
Definition: Tau.h:217
pat::tau::TauPFSpecific::segComp_
float segComp_
Definition: TauPFSpecific.h:60
pat::Tau::hcalEnergyLeadChargedHadrCand
float hcalEnergyLeadChargedHadrCand() const
return hcal energy from LeadChargedHadrCand
Definition: Tau.h:308
pat::Tau::embeddedIsolationTracks_
bool embeddedIsolationTracks_
Definition: Tau.h:420
pat::Tau::flightLengthSig
float flightLengthSig() const
Definition: Tau.h:285
pat::Tau::signalCands
reco::CandidatePtrVector signalCands() const
pat::Tau::secondaryVertex
const reco::VertexRef & secondaryVertex() const
Definition: Tau.h:287
pat::tau::TauPFEssential::dxy_
float dxy_
Definition: TauPFEssential.h:40
pat::Tau::isolationPFChargedHadrCands
const std::vector< reco::PFCandidatePtr > & isolationPFChargedHadrCands() const
pat::Tau::signalNeutralHadrCandPtrs_
reco::CandidatePtrVector signalNeutralHadrCandPtrs_
Definition: Tau.h:484
pat::Tau::hcal3x3OverPLead
float hcal3x3OverPLead() const
Definition: Tau.h:199
pat::Tau::embedLeadPFCand
void embedLeadPFCand()
pat::Tau::phiphiMoment
float phiphiMoment() const
pat::Tau::isolationPFCandsTransientPtrs_
edm::AtomicPtrCache< std::vector< reco::PFCandidatePtr > > isolationPFCandsTransientPtrs_
Definition: Tau.h:450
pat::Tau::signalPFGammaCands
const std::vector< reco::PFCandidatePtr > & signalPFGammaCands() const
Track.h
pat::Tau::bremsRecoveryEOverPLead
float bremsRecoveryEOverPLead() const
Definition: Tau.h:205
pat::Tau::embeddedLeadPFNeutralCand_
bool embeddedLeadPFNeutralCand_
Definition: Tau.h:434
pat::Tau::isolationChargedHadrCands
reco::CandidatePtrVector isolationChargedHadrCands() const
reco::BaseTau
Definition: BaseTau.h:18
pat::Tau::tauID
float tauID(const char *name) const
Definition: Tau.h:339
pat::Tau::secondaryVertexPos
const pat::tau::TauPFEssential::Point & secondaryVertexPos() const
Definition: Tau.h:288
edm::PtrVector< Candidate >
pat::Tau::isPFTau
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:121
pat::Tau::leadPFCand
const reco::PFCandidatePtr leadPFCand() const
pat::Tau::numberOfSourceCandidatePtrs
size_t numberOfSourceCandidatePtrs() const override
pat::Tau::embedSignalTracks
void embedSignalTracks()
method to store the signal tracks internally
pat::Tau::signalTracksTransientRefVector_
edm::AtomicPtrCache< reco::TrackRefVector > signalTracksTransientRefVector_
Definition: Tau.h:427
pat::tau::TauPFEssential::ip3d_error_
float ip3d_error_
Definition: TauPFEssential.h:53
pat::Tau::p4Jet
reco::Candidate::LorentzVector p4Jet() const
pat::Tau::isolationGammaCandPtrs_
reco::CandidatePtrVector isolationGammaCandPtrs_
Definition: Tau.h:489
pat::Tau::initializeJEC
void initializeJEC(unsigned int level, const unsigned int set=0)
initialize the jet to a given JEC level during creation starting from Uncorrected
pat::Tau::signalTauChargedHadronCandidates
const std::vector< reco::PFRecoTauChargedHadron > & signalTauChargedHadronCandidates() const
pat::Tau::availableJECLevels
const std::vector< std::string > availableJECLevels(const std::string &set) const
Definition: Tau.h:358
pat::Tau::embedSignalPFGammaCands
void embedSignalPFGammaCands()
method to store the signal gamma candidates internally
pat::Tau::setSignalNeutralHadrCands
void setSignalNeutralHadrCands(const reco::CandidatePtrVector &ptrs)
Definition: Tau.h:261
pat::Tau::signalTracks
const reco::TrackRefVector & signalTracks() const override
override the reco::BaseTau::signalTracks method, to access the internal storage of the signal tracks
pat::Tau::ExistIsolationCands
bool ExistIsolationCands() const
pat::tau::TauPFSpecific::electronPreIDDecision_
bool electronPreIDDecision_
Definition: TauPFSpecific.h:57
pat::Tau::signalPFCands
const std::vector< reco::PFCandidatePtr > & signalPFCands() const
pat::Tau::jecFactor
float jecFactor(const std::string &level, const std::string &set="") const
pat::Tau::embeddedSignalPFChargedHadrCands_
bool embeddedSignalPFChargedHadrCands_
Definition: Tau.h:440
pat::tau::TauPFEssential::Point
math::XYZPointF Point
Definition: TauPFEssential.h:25
pat::tau::TauPFEssential::hcalEnergy_
float hcalEnergy_
Definition: TauPFEssential.h:55
getGTfromDQMFile.obj
obj
Definition: getGTfromDQMFile.py:32
pat::Tau::isolationPFChargedHadrCandsTransientPtrs_
edm::AtomicPtrCache< std::vector< reco::PFCandidatePtr > > isolationPFChargedHadrCandsTransientPtrs_
Definition: Tau.h:453
pat::tau::TauPFEssential::pvPos_
Point pvPos_
Definition: TauPFEssential.h:44
pat::Tau::embedIsolationTracks
void embedIsolationTracks()
method to store the isolation tracks internally
pat::tau::TauPFEssential::Vector
math::XYZVectorF Vector
Definition: TauPFEssential.h:26
PFTauTransverseImpactParameter.h
pat::Tau::muonDecision
bool muonDecision() const
Definition: Tau.h:223
pat::Tau::currentJECSet_
unsigned int currentJECSet_
Definition: Tau.h:478
pat::Tau::embeddedIsolationPFChargedHadrCands_
bool embeddedIsolationPFChargedHadrCands_
Definition: Tau.h:452
pat::Tau::leadPFChargedHadrCand
const reco::PFCandidatePtr leadPFChargedHadrCand() const
pat::Tau::signalPiZeroCandidates
const std::vector< reco::RecoTauPiZero > & signalPiZeroCandidates() const
pat::Tau::pfSpecific
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception 'not PFTau'
pat::Tau::ip3d_error
float ip3d_error() const
Definition: Tau.h:291
pat::tau::TauPFSpecific::electronPreIDOutput_
float electronPreIDOutput_
Definition: TauPFSpecific.h:56
pat::Tau::embedIsolationPFCands
void embedIsolationPFCands()
method to store the isolation candidates internally
pat::tau::TauPFEssential
Definition: TauPFEssential.h:22
edm::AtomicPtrCache
Definition: AtomicPtrCache.h:38
pat::Tau::isolationPFCands
const std::vector< reco::PFCandidatePtr > & isolationPFCands() const
pat::Tau::signalPFNeutrHadrCands
const std::vector< reco::PFCandidatePtr > & signalPFNeutrHadrCands() const
pat::Tau::isolationPFGammaCands_
std::vector< reco::PFCandidate > isolationPFGammaCands_
Definition: Tau.h:457
pat::Tau::primaryVertex
const reco::VertexRef & primaryVertex() const
Definition: Tau.h:280
pat::tau::TauPFSpecific::hcalMaxOverPLead_
float hcalMaxOverPLead_
Definition: TauPFSpecific.h:51
pat::Tau::leadPFNeutralCand_
std::vector< reco::PFCandidate > leadPFNeutralCand_
Definition: Tau.h:433
pat::Tau::etaAtEcalEntrance
float etaAtEcalEntrance() const
return etaAtEcalEntrance
Definition: Tau.h:312
pat::Tau::primaryVertexCov
const pat::tau::TauPFEssential::CovMatrix & primaryVertexCov() const
Definition: Tau.h:282
pat::Tau::sourceCandidatePtr
reco::CandidatePtr sourceCandidatePtr(size_type i) const override
get the source candidate pointer with index i
pat::tau::TauPFEssential::emFraction_
float emFraction_
Definition: TauPFEssential.h:63
pat::Tau::signalPFNeutralHadrCands_
std::vector< reco::PFCandidate > signalPFNeutralHadrCands_
Definition: Tau.h:442
pat::Tau::currentJECLevel
std::string currentJECLevel() const
return the name of the current step of jet energy corrections
Definition: Tau.h:375
pat::Tau::pfSpecific_
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:469
pat::Tau::leadTauChargedHadronCandidate
reco::PFRecoTauChargedHadronRef leadTauChargedHadronCandidate() const
pat::Tau::currentJECLevel
void currentJECLevel(const unsigned int &level)
update the current JEC level; used by correctedJet
Definition: Tau.h:410
pat::Tau::pfJetRef
const reco::JetBaseRef & pfJetRef() const
Definition: Tau.h:127
pat::Tau::signalChargedHadrCandPtrs_
reco::CandidatePtrVector signalChargedHadrCandPtrs_
Definition: Tau.h:483
reco::LeafCandidate::p4
const LorentzVector & p4() const final
four-momentum Lorentz vector
Definition: LeafCandidate.h:114
pat::Tau::hcalMaxOverPLead
float hcalMaxOverPLead() const
Definition: Tau.h:196
pat::Tau::electronPreIDDecision
bool electronPreIDDecision() const
Definition: Tau.h:214
reco::operator<<
std::ostream & operator<<(std::ostream &, BeamSpot beam)
Definition: BeamSpot.cc:66
pat::tau::TauPFSpecific::bremsRecoveryEOverPLead_
float bremsRecoveryEOverPLead_
Definition: TauPFSpecific.h:54
pat::tau::TauPFSpecific::leadPFChargedHadrCandsignedSipt_
float leadPFChargedHadrCandsignedSipt_
Definition: TauPFSpecific.h:30
pat::tau::TauPFSpecific::muonDecision_
bool muonDecision_
Definition: TauPFSpecific.h:61
pat::Tau::isolationNeutrHadrCands
reco::CandidatePtrVector isolationNeutrHadrCands() const
pat::Tau::embedLeadTrack
void embedLeadTrack()
method to store the leading track internally
pat::tau::TauPFEssential::leadingTrackNormChi2_
float leadingTrackNormChi2_
Definition: TauPFEssential.h:56
pat
Definition: HeavyIon.h:7
pat::Tau::embedSignalPFChargedHadrCands
void embedSignalPFChargedHadrCands()
method to store the signal charged hadrons candidates internally
AtomicPtrCache.h
pat::tau::TauPFSpecific::hcal3x3OverPLead_
float hcal3x3OverPLead_
Definition: TauPFSpecific.h:52
pat::Tau::isolationPFGammaCands
const std::vector< reco::PFCandidatePtr > & isolationPFGammaCands() const
pat::Tau::embedIsolationPFGammaCands
void embedIsolationPFGammaCands()
method to store the isolation gamma candidates internally
pat::tau::TauPFSpecific::electronPreIDTrack_
reco::TrackRef electronPreIDTrack_
Definition: TauPFSpecific.h:55
pat::Tau::etaetaMoment
float etaetaMoment() const
pat::Tau::genJet_
std::vector< reco::GenJet > genJet_
Definition: Tau.h:462
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
pat::Tau::phiAtEcalEntrance
float phiAtEcalEntrance() const
return phiAtEcalEntrance
Definition: Tau.h:310
pat::Tau::setDecayMode
void setDecayMode(int)
set decay mode
pat::Tau::ExistSignalCands
bool ExistSignalCands() const
pat::TauJetCorrFactors
Definition: TauJetCorrFactors.h:31
edm::Ptr
Definition: AssociationVector.h:31
pat::tau::TauPFEssential::decayMode_
int decayMode_
Definition: TauPFEssential.h:37
pat::Tau::correctedTauJet
Tau correctedTauJet(const std::string &level, const std::string &set="") const
VertexFwd.h
pat::Tau::availableJECLevels
const std::vector< std::string > availableJECLevels(const int &set=0) const
pat::Tau::embeddedIsolationPFCands_
bool embeddedIsolationPFCands_
Definition: Tau.h:449
pat::Tau::primaryVertexPos
const pat::tau::TauPFEssential::Point & primaryVertexPos() const
Definition: Tau.h:281
pat::TauCollection
std::vector< Tau > TauCollection
Definition: Tau.h:35
pat::Tau::isolationTracksTransientRefVector_
edm::AtomicPtrCache< reco::TrackRefVector > isolationTracksTransientRefVector_
Definition: Tau.h:422
pat::tau::TauPFEssential::ecalEnergyLeadChargedHadrCand_
float ecalEnergyLeadChargedHadrCand_
Definition: TauPFEssential.h:59
pat::PATTauSlimmer
Slimmer of PAT Taus.
Definition: PATTauSlimmer.cc:19
pat::Tau::electronPreIDTrack
const reco::TrackRef & electronPreIDTrack() const
Definition: Tau.h:208
pat::Tau::leadPFCand_
std::vector< reco::PFCandidate > leadPFCand_
Definition: Tau.h:429
pat::TauRefProd
edm::RefProd< TauCollection > TauRefProd
Definition: Tau.h:38
pat::tau::TauPFSpecific::emFraction_
float emFraction_
Definition: TauPFSpecific.h:49
pat::TauRef
edm::Ref< TauCollection > TauRef
Definition: Tau.h:37
pat::Tau::isolationPFNeutralHadrCands_
std::vector< reco::PFCandidate > isolationPFNeutralHadrCands_
Definition: Tau.h:454
pat::Tau::leadNeutralCand
const reco::CandidatePtr leadNeutralCand() const
return the PFCandidate if available (reference or embedded), or the PackedPFCandidate on miniAOD
pat::Tau::secondaryVertexCov
const pat::tau::TauPFEssential::CovMatrix & secondaryVertexCov() const
Definition: Tau.h:289
pat::Tau::hcalEnergy
float hcalEnergy() const
return sum of hcal energies from signal candidates
Definition: Tau.h:299
pat::tau::TauPFEssential::pvCov_
CovMatrix pvCov_
Definition: TauPFEssential.h:45
pat::Tau::embeddedIsolationPFGammaCands_
bool embeddedIsolationPFGammaCands_
Definition: Tau.h:458
pat::Tau::etaAtEcalEntranceLeadChargedCand
float etaAtEcalEntranceLeadChargedCand() const
return etaAtEcalEntrance from LeadChargedCand
Definition: Tau.h:314
pat::TauRefVector
edm::RefVector< TauCollection > TauRefVector
Definition: Tau.h:39
pat::Tau::etaphiMoment
float etaphiMoment() const
pat::Tau::signalPFNeutralHadrCandsTransientPtrs_
edm::AtomicPtrCache< std::vector< reco::PFCandidatePtr > > signalPFNeutralHadrCandsTransientPtrs_
Definition: Tau.h:444
pat::Tau::availableJECSets
const std::vector< std::string > availableJECSets() const
pat::Tau::signalPFCands_
std::vector< reco::PFCandidate > signalPFCands_
Definition: Tau.h:436
TauPFEssential.h
pat::tau::TauPFEssential::etaAtEcalEntrance_
float etaAtEcalEntrance_
Definition: TauPFEssential.h:58
pat::Tau::tauIDs
const std::vector< IdPair > & tauIDs() const
Definition: Tau.h:344
pat::Tau::embeddedIsolationPFNeutralHadrCands_
bool embeddedIsolationPFNeutralHadrCands_
Definition: Tau.h:455
pat::Tau::isolationPFChargedHadrCandsPtSum
float isolationPFChargedHadrCandsPtSum() const
Definition: Tau.h:181
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
pat::Tau::signalGammaCands
reco::CandidatePtrVector signalGammaCands() const
edm::RefToBase
Definition: AssociativeIterator.h:54
pat::Tau::embeddedLeadTrack_
bool embeddedLeadTrack_
Definition: Tau.h:423
pat::Tau::setIsolationChargedHadrCands
void setIsolationChargedHadrCands(const reco::CandidatePtrVector &ptrs)
Definition: Tau.h:263
pat::Tau::isolationTracks
const reco::TrackRefVector & isolationTracks() const override
override the reco::BaseTau::isolationTracks method, to access the internal storage of the isolation t...
pat::Tau::ecalEnergy
float ecalEnergy() const
Definition: Tau.h:297
pat::Tau::clone
Tau * clone() const override
required reimplementation of the Candidate's clone method
Definition: Tau.h:74
pat::Tau::ptLeadChargedCand
float ptLeadChargedCand() const
return pt from LeadChargedCand
Definition: Tau.h:316
jetMETDQMOfflineSource_cff.jec
jec
Definition: jetMETDQMOfflineSource_cff.py:27
pat::Tau::jecSetAvailable
bool jecSetAvailable(const std::string &set) const
Definition: Tau.h:366
pat::Tau::isolationPFGammaCandsTransientPtrs_
edm::AtomicPtrCache< std::vector< reco::PFCandidatePtr > > isolationPFGammaCandsTransientPtrs_
Definition: Tau.h:459
pat::Tau::tauIDs_
std::vector< IdPair > tauIDs_
Definition: Tau.h:465
MillePedeFileConverter_cfg.out
out
Definition: MillePedeFileConverter_cfg.py:31
pat::tau::TauPFSpecific
Definition: TauPFSpecific.h:22
pat::tau::TauPFSpecific::caloComp_
float caloComp_
Definition: TauPFSpecific.h:59
pat::Tau::segComp
float segComp() const
Definition: Tau.h:220
Candidate.h
pat::Tau::signalTracks_
std::vector< reco::Track > signalTracks_
Definition: Tau.h:426
pat::Tau::isolationPiZeroCandidates
const std::vector< reco::RecoTauPiZero > & isolationPiZeroCandidates() const
pat::Tau::pfEssential
const pat::tau::TauPFEssential & pfEssential() const
pat::Tau::signalPFChargedHadrCands
const std::vector< reco::PFCandidatePtr > & signalPFChargedHadrCands() const
pat::Tau::isolationPFGammaCandsEtSum
float isolationPFGammaCandsEtSum() const
Definition: Tau.h:184
pat::Tau::dxy_PCA
const pat::tau::TauPFEssential::Point & dxy_PCA() const
Definition: Tau.h:276
pat::Tau::signalPFChargedHadrCandsTransientPtrs_
edm::AtomicPtrCache< std::vector< reco::PFCandidatePtr > > signalPFChargedHadrCandsTransientPtrs_
Definition: Tau.h:441
pat::Tau::setSignalChargedHadrCands
void setSignalChargedHadrCands(const reco::CandidatePtrVector &ptrs)
setters for the PtrVectors (for miniAOD)
Definition: Tau.h:260
pat::Tau::signalPFCandsTransientPtrs_
edm::AtomicPtrCache< std::vector< reco::PFCandidatePtr > > signalPFCandsTransientPtrs_
Definition: Tau.h:438
reco::Candidate::LorentzVector
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:36
pat::Tau::setTauIDs
void setTauIDs(const std::vector< IdPair > &ids)
Definition: Tau.h:347
pat::Tau::signalPFChargedHadrCands_
std::vector< reco::PFCandidate > signalPFChargedHadrCands_
Definition: Tau.h:439
pat::Tau::jecSet
int jecSet(const std::string &label) const
pat::Tau::correctedP4
const LorentzVector & correctedP4(const std::string &level, const std::string &set="") const
Definition: Tau.h:392
pat::Tau::isTauIDAvailable
bool isTauIDAvailable(const std::string &name) const
Returns true if a specific ID is available in this pat::Tau.
pat::Tau::embedIsolationPFNeutralHadrCands
void embedIsolationPFNeutralHadrCands()
method to store the isolation neutral hadrons candidates internally
pat::Tau::~Tau
~Tau() override
destructor
pat::Tau::setIsolationGammaCands
void setIsolationGammaCands(const reco::CandidatePtrVector &ptrs)
Definition: Tau.h:265
pat::Tau::signalPFGammaCandsTransientPtrs_
edm::AtomicPtrCache< std::vector< reco::PFCandidatePtr > > signalPFGammaCandsTransientPtrs_
Definition: Tau.h:447
pat::tau::TauPFEssential::CovMatrix
math::ErrorF< 3 >::type CovMatrix
Definition: TauPFEssential.h:27
label
const char * label
Definition: PFTauDecayModeTools.cc:11
pat::Tau::embedIsolationPFChargedHadrCands
void embedIsolationPFChargedHadrCands()
method to store the isolation charged hadrons candidates internally
pat::Tau::IdPair
std::pair< std::string, float > IdPair
Definition: Tau.h:60
reco::Candidate::size_type
size_t size_type
Definition: Candidate.h:29
pat::Tau::currentJECSet
void currentJECSet(const unsigned int &set)
update the current JEC set; used by correctedJet
Definition: Tau.h:408
pat::tau::TauPFEssential::ecalEnergy_
float ecalEnergy_
Definition: TauPFEssential.h:54
pat::tau::TauPFEssential::dxy_PCA_
Point dxy_PCA_
Definition: TauPFEssential.h:39
pat::tau::TauPFEssential::phiAtEcalEntrance_
float phiAtEcalEntrance_
Definition: TauPFEssential.h:57
pat::Tau::ip3d_Sig
float ip3d_Sig() const
pat::Tau::genJet
const reco::GenJet * genJet() const
return matched GenJet, built from the visible particles of a generated tau
pat::Tau::embeddedSignalPFNeutralHadrCands_
bool embeddedSignalPFNeutralHadrCands_
Definition: Tau.h:443
pat::Tau::embeddedSignalPFGammaCands_
bool embeddedSignalPFGammaCands_
Definition: Tau.h:446
pat::Tau::isolationTracks_
std::vector< reco::Track > isolationTracks_
Definition: Tau.h:421
pat::Tau::isolationGammaCands
reco::CandidatePtrVector isolationGammaCands() const
pat::tau::TauPFEssential::hcalEnergyLeadChargedHadrCand_
float hcalEnergyLeadChargedHadrCand_
Definition: TauPFEssential.h:60