CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends
pat::Tau Class Reference

Analysis-level tau class. More...

#include "DataFormats/PatCandidates/interface/Tau.h"

Inheritance diagram for pat::Tau:
pat::Lepton< reco::BaseTau > pat::PATObject< reco::BaseTau > reco::BaseTau reco::RecoCandidate reco::LeafCandidate reco::Candidate

Public Types

typedef std::pair< std::string,
float > 
IdPair
 
- Public Types inherited from pat::PATObject< reco::BaseTau >
typedef reco::BaseTau base_type
 
- Public Types inherited from reco::RecoCandidate
enum  TrackType { noTrackType, recoTrackType, gsfTrackType }
 track type More...
 
- Public Types inherited from reco::LeafCandidate
typedef int Charge
 electric charge type More...
 
typedef CandidateCollection daughters
 collection of daughter candidates More...
 
typedef unsigned int index
 
typedef math::XYZTLorentzVector LorentzVector
 Lorentz vector. More...
 
typedef math::XYZPoint Point
 point in the space More...
 
typedef
math::PtEtaPhiMLorentzVector 
PolarLorentzVector
 Lorentz vector. More...
 
typedef math::XYZVector Vector
 point in the space More...
 
- Public Types inherited from reco::Candidate
enum  { dimension = 3 }
 
enum  { size = dimension * (dimension + 1)/2 }
 matix size More...
 
typedef int Charge
 electric charge type More...
 
typedef candidate::const_iterator const_iterator
 
typedef math::Error< dimension >
::type 
CovarianceMatrix
 covariance error matrix (3x3) More...
 
typedef unsigned int index
 index type More...
 
typedef candidate::iterator iterator
 
typedef math::XYZTLorentzVector LorentzVector
 Lorentz vector. More...
 
typedef math::XYZPoint Point
 point in the space More...
 
typedef
math::PtEtaPhiMLorentzVector 
PolarLorentzVector
 Lorentz vector. More...
 
typedef size_t size_type
 
typedef math::XYZVector Vector
 point in the space More...
 

Public Member Functions

const std::vector< std::string > availableJECLevels (const int &set=0) const
 
const std::vector< std::string > availableJECLevels (const std::string &set) const
 
const std::vector< std::string > availableJECSets () const
 all available label-names of all sets of jet energy corrections More...
 
float bremsRecoveryEOverPLead () const
 
float caloComp () const
 
const pat::tau::TauCaloSpecificcaloSpecific () const
 return CaloTau info or throw exception 'not CaloTau' More...
 
reco::CaloTauTagInfoRef caloTauTagInfoRef () const
 
virtual Tauclone () const
 required reimplementation of the Candidate's clone method More...
 
const LorentzVectorcorrectedP4 (const std::string &level, const std::string &set="") const
 
const LorentzVectorcorrectedP4 (const unsigned int &level, const unsigned int &set=0) const
 
Tau correctedTauJet (const std::string &level, const std::string &set="") const
 
Tau correctedTauJet (const unsigned int &level, const unsigned int &set=0) const
 
std::string currentJECLevel () const
 return the name of the current step of jet energy corrections More...
 
std::string currentJECSet () const
 returns the label of the current set of jet energy corrections More...
 
int decayMode () const
 reconstructed tau decay mode (specific to PFTau) More...
 
float ecalStripSumEOverPLead () const
 
bool electronPreIDDecision () const
 
float electronPreIDOutput () const
 
const reco::TrackRefelectronPreIDTrack () const
 
void embedIsolationPFCands ()
 method to store the isolation candidates internally More...
 
void embedIsolationPFChargedHadrCands ()
 method to store the isolation charged hadrons candidates internally More...
 
void embedIsolationPFGammaCands ()
 method to store the isolation gamma candidates internally More...
 
void embedIsolationPFNeutralHadrCands ()
 method to store the isolation neutral hadrons candidates internally More...
 
void embedIsolationTracks ()
 method to store the isolation tracks internally More...
 
void embedLeadPFCand ()
 method to store the leading candidate internally More...
 
void embedLeadPFChargedHadrCand ()
 method to store the leading charged hadron candidate internally More...
 
void embedLeadPFNeutralCand ()
 method to store the leading neutral candidate internally More...
 
void embedLeadTrack ()
 method to store the leading track internally More...
 
void embedSignalPFCands ()
 method to store the signal candidates internally More...
 
void embedSignalPFChargedHadrCands ()
 method to store the signal charged hadrons candidates internally More...
 
void embedSignalPFGammaCands ()
 method to store the signal gamma candidates internally More...
 
void embedSignalPFNeutralHadrCands ()
 method to store the signal neutral hadrons candidates internally More...
 
void embedSignalTracks ()
 method to store the signal tracks internally More...
 
float emFraction () const
 
float etaetaMoment () const
 
float etaphiMoment () const
 
const reco::GenJetgenJet () const
 return matched GenJet, built from the visible particles of a generated tau More...
 
float hcal3x3OverPLead () const
 
float hcalMaxOverPLead () const
 
float hcalTotOverPLead () const
 
bool isCaloTau () const
 Returns true if this pat::Tau was made from a reco::CaloTau. More...
 
float isolationECALhitsEtSum () const
 
const reco::PFCandidateRefVectorisolationPFCands () const
 
const reco::PFCandidateRefVectorisolationPFChargedHadrCands () const
 
float isolationPFChargedHadrCandsPtSum () const
 
const reco::PFCandidateRefVectorisolationPFGammaCands () const
 
float isolationPFGammaCandsEtSum () const
 
const reco::PFCandidateRefVectorisolationPFNeutrHadrCands () const
 
const std::vector
< reco::RecoTauPiZero > & 
isolationPiZeroCandidates () const
 
const reco::TrackRefVectorisolationTracks () const
 override the reco::BaseTau::isolationTracks method, to access the internal storage of the isolation tracks More...
 
float isolationTracksPtSum () const
 
bool isPFTau () const
 Returns true if this pat::Tau was made from a reco::PFTau. More...
 
bool isTauIDAvailable (const std::string &name) const
 Returns true if a specific ID is available in this pat::Tau. More...
 
float jecFactor (const std::string &level, const std::string &set="") const
 
float jecFactor (const unsigned int &level, const unsigned int &set=0) const
 
bool jecSetAvailable (const std::string &set) const
 
bool jecSetAvailable (const unsigned int &set) const
 
bool jecSetsAvailable () const
 
const reco::PFCandidateRef leadPFCand () const
 
const reco::PFCandidateRef leadPFChargedHadrCand () const
 
float leadPFChargedHadrCandsignedSipt () const
 
const reco::PFCandidateRef leadPFNeutralCand () const
 
reco::TrackRef leadTrack () const
 override the reco::BaseTau::leadTrack method, to access the internal storage of the leading track More...
 
float leadTrackHCAL3x3hitsEtSum () const
 
float leadTrackHCAL3x3hottesthitDEta () const
 
float leadTracksignedSipt () const
 
float maximumHCALhitEt () const
 
float maximumHCALPFClusterEt () const
 
bool muonDecision () const
 
const
reco::Candidate::LorentzVector
p4Jet () const
 
const reco::PFJetRefpfJetRef () const
 
const pat::tau::TauPFSpecificpfSpecific () const
 return PFTau info or throw exception 'not PFTau' More...
 
float phiphiMoment () const
 
float segComp () const
 
void setDecayMode (int)
 set decay mode More...
 
void setGenJet (const reco::GenJetRef &ref)
 set the matched GenJet More...
 
void setTauIDs (const std::vector< IdPair > &ids)
 
const reco::PFCandidateRefVectorsignalPFCands () const
 
const reco::PFCandidateRefVectorsignalPFChargedHadrCands () const
 
const reco::PFCandidateRefVectorsignalPFGammaCands () const
 
const reco::PFCandidateRefVectorsignalPFNeutrHadrCands () const
 
const std::vector
< reco::RecoTauPiZero > & 
signalPiZeroCandidates () const
 
const reco::TrackRefVectorsignalTracks () const
 override the reco::BaseTau::signalTracks method, to access the internal storage of the signal tracks More...
 
float signalTracksInvariantMass () const
 
 Tau ()
 default constructor More...
 
 Tau (const reco::BaseTau &aTau)
 constructor from a reco tau More...
 
 Tau (const edm::RefToBase< reco::BaseTau > &aTauRef)
 constructor from a RefToBase to a reco tau (to be superseded by Ptr counterpart) More...
 
 Tau (const edm::Ptr< reco::BaseTau > &aTauRef)
 constructor from a Ptr to a reco tau More...
 
float tauID (const std::string &name) const
 
float tauID (const char *name) const
 
const std::vector< IdPair > & tauIDs () const
 
float TracksInvariantMass () const
 
virtual ~Tau ()
 destructor More...
 
- Public Member Functions inherited from pat::Lepton< reco::BaseTau >
float caloIso () const
 
float chargedHadronIso () const
 
float ecalIso () const
 
const IsoDepositecalIsoDeposit () const
 
void ecalIsoDeposit (const IsoDeposit &dep)
 
const reco::GenParticlegenLepton () const
 
float hcalIso () const
 
const IsoDeposithcalIsoDeposit () const
 
void hcalIsoDeposit (const IsoDeposit &dep)
 
const IsoDepositisoDeposit (IsolationKeys key) const
 Returns the IsoDeposit associated with some key, or a null pointer if it is not available. More...
 
 Lepton ()
 
 Lepton (const reco::BaseTau &aLepton)
 
 Lepton (const edm::RefToBase< reco::BaseTau > &aLeptonRef)
 
 Lepton (const edm::Ptr< reco::BaseTau > &aLeptonRef)
 
float neutralHadronIso () const
 
float particleIso () const
 
float photonIso () const
 
float puChargedHadronIso () const
 
void setEcalIso (float caloIso)
 Sets ecal isolation variable. More...
 
void setGenLepton (const reco::GenParticleRef &gl, bool embed=false)
 
void setHcalIso (float caloIso)
 Sets hcal isolation variable. More...
 
void setIsoDeposit (IsolationKeys key, const IsoDeposit &dep)
 Sets the IsoDeposit associated with some key; if it is already existent, it is overwritten. More...
 
void setIsolation (IsolationKeys key, float value)
 
void setTrackIso (float trackIso)
 Sets tracker isolation variable. More...
 
void setUserIso (float value, uint8_t index=0)
 Sets user isolation variable index. More...
 
float trackIso () const
 
const IsoDeposittrackIsoDeposit () const
 
void trackIsoDeposit (const IsoDeposit &dep)
 
float userIso (uint8_t index=0) const
 
const IsoDeposituserIsoDeposit (uint8_t index=0) const
 
void userIsoDeposit (const IsoDeposit &dep, uint8_t index=0)
 
float userIsolation (IsolationKeys key) const
 
float userIsolation (const std::string &key) const
 
virtual ~Lepton ()
 
- Public Member Functions inherited from pat::PATObject< reco::BaseTau >
void addGenParticleRef (const reco::GenParticleRef &ref)
 
void addTriggerObjectMatch (const TriggerObjectStandAlone &trigObj)
 add a trigger match More...
 
void addUserCand (const std::string &label, const reco::CandidatePtr &data)
 Set user-defined int. More...
 
void addUserData (const std::string &label, const T &data, bool transientOnly=false)
 
void addUserDataFromPtr (const std::string &label, const edm::Ptr< pat::UserData > &data)
 
void addUserFloat (const std::string &label, float data)
 Set user-defined float. More...
 
void addUserInt (const std::string &label, int32_t data)
 Set user-defined int. More...
 
std::vector< std::pair
< std::string,
pat::LookupTableRecord > > 
efficiencies () const
 Returns the efficiencies as <name,value> pairs (by value) More...
 
const pat::LookupTableRecordefficiency (const std::string &name) const
 Returns an efficiency given its name. More...
 
const std::vector< std::string > & efficiencyNames () const
 Returns the list of the names of the stored efficiencies. More...
 
const std::vector
< pat::LookupTableRecord > & 
efficiencyValues () const
 Returns the list of the values of the stored efficiencies (the ordering is the same as in efficiencyNames()) More...
 
void embedGenParticle ()
 
const reco::GenParticlegenParticle (size_t idx=0) const
 
reco::GenParticleRef genParticleById (int pdgId, int status, uint8_t autoCharge=0) const
 
reco::GenParticleRef genParticleRef (size_t idx=0) const
 
std::vector< reco::GenParticleRefgenParticleRefs () const
 
size_t genParticlesSize () const
 Number of generator level particles stored as ref or embedded. More...
 
const pat::CandKinResolutiongetKinResolution (const std::string &label="") const
 
bool hasKinResolution (const std::string &label="") const
 Check if the kinematic resolutions are stored into this object (possibly specifying a label for them) More...
 
bool hasOverlaps (const std::string &label) const
 Returns true if there was at least one overlap for this test label. More...
 
bool hasUserCand (const std::string &key) const
 Return true if there is a user-defined int with a given name. More...
 
bool hasUserData (const std::string &key) const
 Check if user data with a specific type is present. More...
 
bool hasUserFloat (const std::string &key) const
 Return true if there is a user-defined float with a given name. More...
 
bool hasUserFloat (const char *key) const
 a CINT-friendly interface More...
 
bool hasUserInt (const std::string &key) const
 Return true if there is a user-defined int with a given name. More...
 
const reco::CandidateoriginalObject () const
 access to the original object; returns zero for null Ref and throws for unavailable collection More...
 
const edm::Ptr< reco::Candidate > & originalObjectRef () const
 reference to original object. Returns a null reference if not available More...
 
const std::vector< std::string > & overlapLabels () const
 Returns the labels of the overlap tests that found at least one overlap. More...
 
const reco::CandidatePtrVectoroverlaps (const std::string &label) const
 
 PATObject ()
 default constructor More...
 
 PATObject (const reco::BaseTau &obj)
 constructor from a base object (leaves invalid reference to original object!) More...
 
 PATObject (const edm::RefToBase< reco::BaseTau > &ref)
 constructor from reference More...
 
 PATObject (const edm::Ptr< reco::BaseTau > &ref)
 constructor from reference More...
 
double resolE (const std::string &label="") const
 Resolution on energy, possibly with a label to specify which resolution to use. More...
 
double resolEt (const std::string &label="") const
 Resolution on et, possibly with a label to specify which resolution to use. More...
 
double resolEta (const std::string &label="") const
 Resolution on eta, possibly with a label to specify which resolution to use. More...
 
double resolM (const std::string &label="") const
 
double resolP (const std::string &label="") const
 Resolution on p, possibly with a label to specify which resolution to use. More...
 
double resolPhi (const std::string &label="") const
 Resolution on phi, possibly with a label to specify which resolution to use. More...
 
double resolPInv (const std::string &label="") const
 Resolution on 1/p, possibly with a label to specify which resolution to use. More...
 
double resolPt (const std::string &label="") const
 Resolution on pt, possibly with a label to specify which resolution to use. More...
 
double resolPx (const std::string &label="") const
 Resolution on px, possibly with a label to specify which resolution to use. More...
 
double resolPy (const std::string &label="") const
 Resolution on py, possibly with a label to specify which resolution to use. More...
 
double resolPz (const std::string &label="") const
 Resolution on pz, possibly with a label to specify which resolution to use. More...
 
double resolTheta (const std::string &label="") const
 Resolution on theta, possibly with a label to specify which resolution to use. More...
 
void setEfficiency (const std::string &name, const pat::LookupTableRecord &value)
 
void setGenParticle (const reco::GenParticle &particle)
 Set the generator level particle from a particle not in the Event (embedding it, of course) More...
 
void setGenParticleRef (const reco::GenParticleRef &ref, bool embed=false)
 Set the generator level particle reference. More...
 
void setKinResolution (const pat::CandKinResolution &resol, const std::string &label="")
 Add a kinematic resolution to this object (possibly with a label) More...
 
void setOverlaps (const std::string &label, const reco::CandidatePtrVector &overlaps)
 
const TriggerObjectStandAlonetriggerObjectMatch (const size_t idx=0) const
 get one matched trigger object by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByAlgorithm (const std::string &nameAlgorithm, const bool algoCondAccepted=true, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByAlgorithm (const char *nameAlgorithm, const bool algoCondAccepted=true, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByAlgorithm (const std::string &nameAlgorithm, const unsigned algoCondAccepted, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByAlgorithm (const char *nameAlgorithm, const unsigned algoCondAccepted, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByCollection (const std::string &coll, const size_t idx=0) const
 get one matched trigger object from a certain collection by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByCollection (const char *coll, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByCondition (const std::string &nameCondition, const size_t idx=0) const
 get one matched L1 object used in a succeeding object combination of a certain L1 condition by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByCondition (const char *nameCondition, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByFilter (const std::string &labelFilter, const size_t idx=0) const
 get one matched HLT object used in a certain HLT filter by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByFilter (const char *labelFilter, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByFilterID (const unsigned triggerObjectType, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByPath (const std::string &namePath, const bool pathLastFilterAccepted=false, const bool pathL3FilterAccepted=true, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByPath (const char *namePath, const bool pathLastFilterAccepted=false, const bool pathL3FilterAccepted=true, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByPath (const std::string &namePath, const unsigned pathLastFilterAccepted, const unsigned pathL3FilterAccepted=1, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByPath (const char *namePath, const unsigned pathLastFilterAccepted, const unsigned pathL3FilterAccepted=1, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByType (const trigger::TriggerObjectType triggerObjectType, const size_t idx=0) const
 get one matched trigger object of a certain type by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByType (const unsigned triggerObjectType, const size_t idx=0) const
 
const
TriggerObjectStandAloneCollection
triggerObjectMatches () const
 get all matched trigger objects More...
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByAlgorithm (const std::string &nameAlgorithm, const bool algoCondAccepted=true) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByAlgorithm (const char *nameAlgorithm, const bool algoCondAccepted=true) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByAlgorithm (const std::string &nameAlgorithm, const unsigned algoCondAccepted) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByAlgorithm (const char *nameAlgorithm, const unsigned algoCondAccepted) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByCollection (const std::string &coll) const
 get all matched trigger objects from a certain collection More...
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByCollection (const char *coll) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByCondition (const std::string &nameCondition) const
 get all matched L1 objects used in a succeeding object combination of a certain L1 condition More...
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByCondition (const char *nameCondition) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByFilter (const std::string &labelFilter) const
 get all matched HLT objects used in a certain HLT filter More...
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByFilter (const char *labelFilter) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByFilterID (const unsigned triggerObjectType) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByPath (const std::string &namePath, const bool pathLastFilterAccepted=false, const bool pathL3FilterAccepted=true) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByPath (const char *namePath, const bool pathLastFilterAccepted=false, const bool pathL3FilterAccepted=true) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByPath (const std::string &namePath, const unsigned pathLastFilterAccepted, const unsigned pathL3FilterAccepted=1) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByPath (const char *namePath, const unsigned pathLastFilterAccepted, const unsigned pathL3FilterAccepted=1) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByType (const trigger::TriggerObjectType triggerObjectType) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByType (const unsigned triggerObjectType) const
 
reco::CandidatePtr userCand (const std::string &key) const
 
const std::vector< std::string > & userCandNames () const
 Get list of user-defined cand names. More...
 
const TuserData (const std::string &key) const
 Returns user-defined data. Returns NULL if the data is not present, or not of type T. More...
 
const void * userDataBare (const std::string &key) const
 
const std::vector< std::string > & userDataNames () const
 Get list of user data object names. More...
 
const std::string & userDataObjectType (const std::string &key) const
 Get human-readable type of user data object, for debugging. More...
 
float userFloat (const std::string &key) const
 
float userFloat (const char *key) const
 a CINT-friendly interface More...
 
const std::vector< std::string > & userFloatNames () const
 Get list of user-defined float names. More...
 
int32_t userInt (const std::string &key) const
 
const std::vector< std::string > & userIntNames () const
 Get list of user-defined int names. More...
 
virtual ~PATObject ()
 destructor More...
 
- Public Member Functions inherited from reco::BaseTau
math::XYZTLorentzVector alternatLorentzVect () const
 
 BaseTau ()
 
 BaseTau (Charge q, const LorentzVector &, const Point &=Point(0, 0, 0))
 
void setalternatLorentzVect (math::XYZTLorentzVector)
 
void setisolationTracks (const TrackRefVector &)
 
void setleadTrack (const TrackRef &)
 
void setsignalTracks (const TrackRefVector &)
 
virtual ~BaseTau ()
 
- Public Member Functions inherited from reco::RecoCandidate
virtual const TrackbestTrack () const
 best track pointer More...
 
virtual TrackBaseRef bestTrackRef () const
 best track RefToBase More...
 
virtual TrackType bestTrackType () const
 track type More...
 
virtual CaloTowerRef caloTower () const
 reference to a CaloTower More...
 
virtual reco::TrackRef combinedMuon () const
 reference to a stand-alone muon Track More...
 
virtual reco::GsfTrackRef gsfTrack () const
 reference to a GsfTrack More...
 
virtual size_t numberOfTracks () const
 number of multiple Tracks More...
 
 RecoCandidate ()
 default constructor More...
 
template<typename P4 >
 RecoCandidate (Charge q, const P4 &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0)
 constructor from values More...
 
virtual reco::TrackRef standAloneMuon () const
 reference to a stand-alone muon Track More...
 
virtual reco::SuperClusterRef superCluster () const
 reference to a SuperCluster More...
 
virtual reco::TrackRef track () const
 reference to a Track More...
 
virtual reco::TrackRef track (size_t) const
 reference to one of multiple Tracks More...
 
virtual ~RecoCandidate ()
 destructor More...
 
- Public Member Functions inherited from reco::LeafCandidate
virtual const_iterator begin () const
 first daughter const_iterator More...
 
virtual iterator begin ()
 first daughter iterator More...
 
template<typename S >
daughter_iterator< S >::type beginFilter (const S &s) const
 
virtual Vector boostToCM () const GCC11_FINAL
 
virtual int charge () const GCC11_FINAL
 electric charge More...
 
virtual const Candidatedaughter (size_type) const
 return daughter at a given position (throws an exception) More...
 
virtual Candidatedaughter (size_type)
 return daughter at a given position (throws an exception) More...
 
virtual Candidatedaughter (const std::string &s)
 return daughter with a specified role name More...
 
virtual const Candidatedaughter (const std::string &s) const
 return daughter with a specified role name More...
 
virtual const_iterator end () const
 last daughter const_iterator More...
 
virtual iterator end ()
 last daughter iterator More...
 
template<typename S >
daughter_iterator< S >::type endFilter (const S &s) const
 
virtual double energy () const GCC11_FINAL
 energy More...
 
virtual double et () const GCC11_FINAL
 transverse energy More...
 
virtual float eta () const GCC11_FINAL
 momentum pseudorapidity More...
 
virtual void fillVertexCovariance (CovarianceMatrix &v) const
 fill SMatrix More...
 
template<typename T >
T get () const
 get a component More...
 
template<typename T , typename Tag >
T get () const
 get a component More...
 
template<typename T >
T get (size_type i) const
 get a component More...
 
template<typename T , typename Tag >
T get (size_type i) const
 get a component More...
 
virtual bool hasMasterClone () const
 
virtual bool hasMasterClonePtr () const
 
virtual bool isCaloMuon () const
 
virtual bool isConvertedPhoton () const
 
virtual bool isElectron () const
 
virtual bool isGlobalMuon () const
 
virtual bool isJet () const
 
virtual bool isMuon () const
 
virtual bool isPhoton () const
 
virtual bool isStandAloneMuon () const
 
virtual bool isTrackerMuon () const
 
 LeafCandidate ()
 default constructor More...
 
 LeafCandidate (const Candidate &c)
 
template<typename P4 >
 LeafCandidate (Charge q, const P4 &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from Any values More...
 
 LeafCandidate (Charge q, const PtEtaPhiMass &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from values More...
 
 LeafCandidate (Charge q, const LorentzVector &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from values More...
 
 LeafCandidate (Charge q, const PolarLorentzVector &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from values More...
 
virtual bool longLived () const GCC11_FINAL
 is long lived? More...
 
virtual float mass () const GCC11_FINAL
 mass More...
 
virtual bool massConstraint () const GCC11_FINAL
 do mass constraint? More...
 
virtual float massSqr () const GCC11_FINAL
 mass squared More...
 
virtual const CandidateBaseRefmasterClone () const
 
virtual const CandidatePtrmasterClonePtr () const
 
template<typename Ref >
Ref masterRef () const
 cast master clone reference to a concrete type More...
 
virtual Vector momentum () const GCC11_FINAL
 spatial momentum vector More...
 
virtual const Candidatemother (size_type) const
 return mother at a given position (throws an exception) More...
 
virtual double mt () const GCC11_FINAL
 transverse mass More...
 
virtual double mtSqr () const GCC11_FINAL
 transverse mass squared More...
 
template<typename T >
size_type numberOf () const
 number of components More...
 
template<typename T , typename Tag >
size_type numberOf () const
 number of components More...
 
virtual size_t numberOfDaughters () const
 number of daughters More...
 
virtual size_t numberOfMothers () const
 number of mothers More...
 
virtual size_t numberOfSourceCandidatePtrs () const
 
virtual double p () const GCC11_FINAL
 magnitude of momentum vector More...
 
virtual const LorentzVectorp4 () const GCC11_FINAL
 four-momentum Lorentz vector More...
 
virtual int pdgId () const GCC11_FINAL
 PDG identifier. More...
 
virtual float phi () const GCC11_FINAL
 momentum azimuthal angle More...
 
virtual const PolarLorentzVectorpolarP4 () const GCC11_FINAL
 four-momentum Lorentz vector More...
 
virtual float pt () const GCC11_FINAL
 transverse momentum More...
 
virtual double px () const GCC11_FINAL
 x coordinate of momentum vector More...
 
virtual double py () const GCC11_FINAL
 y coordinate of momentum vector More...
 
virtual double pz () const GCC11_FINAL
 z coordinate of momentum vector More...
 
virtual double rapidity () const GCC11_FINAL
 rapidity More...
 
virtual void setCharge (Charge q) GCC11_FINAL
 set electric charge More...
 
virtual void setLongLived () GCC11_FINAL
 set long lived flag More...
 
virtual void setMass (double m) GCC11_FINAL
 set particle mass More...
 
virtual void setMassConstraint () GCC11_FINAL
 set mass constraint flag More...
 
virtual void setP4 (const LorentzVector &p4) GCC11_FINAL
 set 4-momentum More...
 
virtual void setP4 (const PolarLorentzVector &p4) GCC11_FINAL
 set 4-momentum More...
 
virtual void setPdgId (int pdgId) GCC11_FINAL
 
virtual void setPz (double pz) GCC11_FINAL
 
virtual void setStatus (int status) GCC11_FINAL
 set status word More...
 
virtual void setThreeCharge (Charge qx3) GCC11_FINAL
 set electric charge More...
 
virtual void setVertex (const Point &vertex)
 set vertex More...
 
virtual CandidatePtr sourceCandidatePtr (size_type i) const
 
virtual int status () const GCC11_FINAL
 status word More...
 
virtual double theta () const GCC11_FINAL
 momentum polar angle More...
 
virtual int threeCharge () const GCC11_FINAL
 electric charge More...
 
virtual const Pointvertex () const
 vertex position (overwritten by PF...) More...
 
virtual double vertexChi2 () const
 chi-squares More...
 
virtual double vertexCovariance (int i, int j) const
 (i, j)-th element of error matrix, i, j = 0, ... 2 More...
 
CovarianceMatrix vertexCovariance () const GCC11_FINAL
 return SMatrix More...
 
virtual double vertexNdof () const
 
virtual double vertexNormalizedChi2 () const
 chi-squared divided by n.d.o.f. More...
 
virtual double vx () const
 x coordinate of vertex position More...
 
virtual double vy () const
 y coordinate of vertex position More...
 
virtual double vz () const
 z coordinate of vertex position More...
 
virtual double y () const GCC11_FINAL
 rapidity More...
 
virtual ~LeafCandidate ()
 destructor More...
 
- Public Member Functions inherited from reco::Candidate
template<typename S >
daughter_iterator< S >::type beginFilter (const S &s) const
 
 Candidate ()
 default constructor More...
 
template<typename S >
daughter_iterator< S >::type endFilter (const S &s) const
 
template<typename T >
T get () const
 get a component More...
 
template<typename T , typename Tag >
T get () const
 get a component More...
 
template<typename T >
T get (size_type i) const
 get a component More...
 
template<typename T , typename Tag >
T get (size_type i) const
 get a component More...
 
template<typename Ref >
Ref masterRef () const
 cast master clone reference to a concrete type More...
 
template<typename T >
size_type numberOf () const
 number of components More...
 
template<typename T , typename Tag >
size_type numberOf () const
 number of components More...
 
virtual void setSourceCandidatePtr (const CandidatePtr &ptr)
 Set the ptr to the source Candidate. More...
 
virtual ~Candidate ()
 destructor More...
 

Protected Member Functions

void addJECFactors (const TauJetCorrFactors &jec)
 add more sets of energy correction factors More...
 
void currentJECLevel (const unsigned int &level)
 update the current JEC level; used by correctedJet More...
 
void currentJECSet (const unsigned int &set)
 update the current JEC set; used by correctedJet More...
 
void initializeJEC (unsigned int level, const unsigned int set=0)
 initialize the jet to a given JEC level during creation starting from Uncorrected More...
 
int jecSet (const std::string &label) const
 return true if this jet carries the jet correction factors of a different set, for systematic studies More...
 
- Protected Member Functions inherited from reco::RecoCandidate
template<typename R >
bool checkOverlap (const R &r1, const R &r2) const
 check if two components overlap More...
 
- Protected Member Functions inherited from reco::LeafCandidate
void cacheCartesian () const
 set internal cache More...
 
void cachePolar () const
 set internal cache More...
 
void clearCache () const
 clear internal cache More...
 

Protected Attributes

std::vector
< pat::tau::TauCaloSpecific
caloSpecific_
 holder for CaloTau info, or empty vector if PFTau More...
 
unsigned int currentJECLevel_
 
unsigned int currentJECSet_
 
bool embeddedIsolationPFCands_
 
bool embeddedIsolationPFChargedHadrCands_
 
bool embeddedIsolationPFGammaCands_
 
bool embeddedIsolationPFNeutralHadrCands_
 
bool embeddedIsolationTracks_
 
bool embeddedLeadPFCand_
 
bool embeddedLeadPFChargedHadrCand_
 
bool embeddedLeadPFNeutralCand_
 
bool embeddedLeadTrack_
 
bool embeddedSignalPFCands_
 
bool embeddedSignalPFChargedHadrCands_
 
bool embeddedSignalPFGammaCands_
 
bool embeddedSignalPFNeutralHadrCands_
 
bool embeddedSignalTracks_
 
std::vector< reco::GenJetgenJet_
 
std::vector< reco::PFCandidateisolationPFCands_
 
bool isolationPFCandsRefVectorFixed_
 
reco::PFCandidateRefVector isolationPFCandsTransientRefVector_
 
std::vector< reco::PFCandidateisolationPFChargedHadrCands_
 
bool isolationPFChargedHadrCandsRefVectorFixed_
 
reco::PFCandidateRefVector isolationPFChargedHadrCandsTransientRefVector_
 
std::vector< reco::PFCandidateisolationPFGammaCands_
 
bool isolationPFGammaCandsRefVectorFixed_
 
reco::PFCandidateRefVector isolationPFGammaCandsTransientRefVector_
 
std::vector< reco::PFCandidateisolationPFNeutralHadrCands_
 
bool isolationPFNeutralHadrCandsRefVectorFixed_
 
reco::PFCandidateRefVector isolationPFNeutralHadrCandsTransientRefVector_
 
std::vector< reco::TrackisolationTracks_
 
reco::TrackRefVector isolationTracksTransientRefVector_
 
bool isolationTracksTransientRefVectorFixed_
 
std::vector
< pat::TauJetCorrFactors
jec_
 
std::vector< reco::PFCandidateleadPFCand_
 
std::vector< reco::PFCandidateleadPFChargedHadrCand_
 
std::vector< reco::PFCandidateleadPFNeutralCand_
 
std::vector< reco::TrackleadTrack_
 
std::vector
< pat::tau::TauPFSpecific
pfSpecific_
 holder for PFTau info, or empty vector if CaloTau More...
 
std::vector< reco::PFCandidatesignalPFCands_
 
bool signalPFCandsRefVectorFixed_
 
reco::PFCandidateRefVector signalPFCandsTransientRefVector_
 
std::vector< reco::PFCandidatesignalPFChargedHadrCands_
 
bool signalPFChargedHadrCandsRefVectorFixed_
 
reco::PFCandidateRefVector signalPFChargedHadrCandsTransientRefVector_
 
std::vector< reco::PFCandidatesignalPFGammaCands_
 
bool signalPFGammaCandsRefVectorFixed_
 
reco::PFCandidateRefVector signalPFGammaCandsTransientRefVector_
 
std::vector< reco::PFCandidatesignalPFNeutralHadrCands_
 
bool signalPFNeutralHadrCandsRefVectorFixed_
 
reco::PFCandidateRefVector signalPFNeutralHadrCandsTransientRefVector_
 
std::vector< reco::TracksignalTracks_
 
reco::TrackRefVector signalTracksTransientRefVector_
 
bool signalTracksTransientRefVectorFixed_
 
std::vector< IdPairtauIDs_
 
- Protected Attributes inherited from pat::Lepton< reco::BaseTau >
IsoDepositPairs isoDeposits_
 
std::vector< float > isolations_
 
- Protected Attributes inherited from pat::PATObject< reco::BaseTau >
std::vector< std::string > efficiencyNames_
 vector of the efficiencies (names) More...
 
std::vector
< pat::LookupTableRecord
efficiencyValues_
 vector of the efficiencies (values) More...
 
std::vector< reco::GenParticlegenParticleEmbedded_
 vector to hold an embedded generator level particle More...
 
std::vector< reco::GenParticleRefgenParticleRef_
 Reference to a generator level particle. More...
 
std::vector< std::string > kinResolutionLabels_
 
std::vector
< pat::CandKinResolution
kinResolutions_
 Kinematic resolutions. More...
 
std::vector
< reco::CandidatePtrVector
overlapItems_
 Overlapping items (sorted by distance) More...
 
std::vector< std::string > overlapLabels_
 Overlapping test labels (only if there are any overlaps) More...
 
edm::Ptr< reco::CandidaterefToOrig_
 
TriggerObjectStandAloneCollection triggerObjectMatchesEmbedded_
 vector of trigger matches More...
 
std::vector< std::string > userCandLabels_
 
std::vector< reco::CandidatePtruserCands_
 
std::vector< std::string > userDataLabels_
 User data object. More...
 
pat::UserDataCollection userDataObjects_
 
std::vector< std::string > userFloatLabels_
 
std::vector< float > userFloats_
 
std::vector< std::string > userIntLabels_
 
std::vector< int32_t > userInts_
 
- Protected Attributes inherited from reco::LeafCandidate
bool cacheCartesianFixed_
 
bool cachePolarFixed_
 has cache been set? More...
 
float eta_
 
float mass_
 
LorentzVector p4Cartesian_
 internal cache for p4 More...
 
PolarLorentzVector p4Polar_
 internal cache for p4 More...
 
int pdgId_
 PDG identifier. More...
 
float phi_
 
float pt_
 four-momentum Lorentz vector More...
 
Charge qx3_
 electric charge More...
 
int status_
 status word More...
 
Point vertex_
 vertex position More...
 

Friends

class PATTauProducer
 
std::ostream & reco::operator<< (std::ostream &out, const Tau &obj)
 pipe operator (introduced to use pat::Tau with PFTopProjectors) More...
 

Additional Inherited Members

- Static Public Attributes inherited from reco::LeafCandidate
static const unsigned int longLivedTag = 65536
 long lived flag More...
 
static const unsigned int massConstraintTag = 131072
 do mass constraint flag More...
 
- Protected Types inherited from pat::Lepton< reco::BaseTau >
typedef std::vector< std::pair
< IsolationKeys,
pat::IsoDeposit > > 
IsoDepositPairs
 

Detailed Description

Analysis-level tau class.

pat::Tau implements the analysis-level tau class within the 'pat' namespace. It inherits from reco::BaseTau, copies all the information from the source reco::CaloTau or reco::PFTau, and adds some PAT-specific variable.

Please post comments and questions to the Physics Tools hypernews: https://hypernews.cern.ch/HyperNews/CMS/get/physTools.html

Author
Steven Lowette, Christophe Delaere, Giovanni Petrucciani, Frederic Ronga, Colin Bernet
Version
Id:
Tau.h,v 1.34 2012/04/25 07:32:20 cbern Exp

Definition at line 50 of file Tau.h.

Member Typedef Documentation

typedef std::pair<std::string,float> pat::Tau::IdPair

Definition at line 58 of file Tau.h.

Constructor & Destructor Documentation

Tau::Tau ( )

default constructor

Definition at line 13 of file Tau.cc.

Referenced by clone().

13  :
17  ,embeddedLeadTrack_(false)
18  ,embeddedSignalTracks_(false)
20  ,embeddedLeadPFCand_(false)
39 {
40 }
bool embeddedLeadPFNeutralCand_
Definition: Tau.h:356
bool embeddedSignalPFChargedHadrCands_
Definition: Tau.h:363
bool embeddedIsolationPFChargedHadrCands_
Definition: Tau.h:379
bool embeddedIsolationPFCands_
Definition: Tau.h:375
bool signalPFCandsRefVectorFixed_
Definition: Tau.h:361
bool signalPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:369
bool embeddedIsolationPFNeutralHadrCands_
Definition: Tau.h:383
bool embeddedLeadTrack_
Definition: Tau.h:344
bool embeddedSignalPFGammaCands_
Definition: Tau.h:371
bool embeddedIsolationPFGammaCands_
Definition: Tau.h:387
bool signalPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:365
bool isolationTracksTransientRefVectorFixed_
Definition: Tau.h:343
bool embeddedSignalTracks_
Definition: Tau.h:346
bool embeddedLeadPFCand_
Definition: Tau.h:352
bool isolationPFGammaCandsRefVectorFixed_
Definition: Tau.h:389
bool embeddedLeadPFChargedHadrCand_
Definition: Tau.h:354
bool embeddedSignalPFNeutralHadrCands_
Definition: Tau.h:367
bool isolationPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:381
bool isolationPFCandsRefVectorFixed_
Definition: Tau.h:377
bool embeddedSignalPFCands_
Definition: Tau.h:359
bool isolationPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:385
bool embeddedIsolationTracks_
Definition: Tau.h:340
bool signalPFGammaCandsRefVectorFixed_
Definition: Tau.h:373
bool signalTracksTransientRefVectorFixed_
Definition: Tau.h:349
Tau::Tau ( const reco::BaseTau aTau)

constructor from a reco tau

constructor from reco::BaseTau

Definition at line 43 of file Tau.cc.

References caloSpecific_, and pfSpecific_.

43  :
47  ,embeddedLeadTrack_(false)
48  ,embeddedSignalTracks_(false)
50  ,embeddedLeadPFCand_(false)
69 {
70  const reco::PFTau * pfTau = dynamic_cast<const reco::PFTau *>(&aTau);
71  if (pfTau != 0) pfSpecific_.push_back(pat::tau::TauPFSpecific(*pfTau));
72  const reco::CaloTau * caloTau = dynamic_cast<const reco::CaloTau *>(&aTau);
73  if (caloTau != 0) caloSpecific_.push_back(pat::tau::TauCaloSpecific(*caloTau));
74 }
bool embeddedLeadPFNeutralCand_
Definition: Tau.h:356
bool embeddedSignalPFChargedHadrCands_
Definition: Tau.h:363
bool embeddedIsolationPFChargedHadrCands_
Definition: Tau.h:379
bool embeddedIsolationPFCands_
Definition: Tau.h:375
bool signalPFCandsRefVectorFixed_
Definition: Tau.h:361
bool signalPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:369
bool embeddedIsolationPFNeutralHadrCands_
Definition: Tau.h:383
bool embeddedLeadTrack_
Definition: Tau.h:344
bool embeddedSignalPFGammaCands_
Definition: Tau.h:371
bool embeddedIsolationPFGammaCands_
Definition: Tau.h:387
bool signalPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:365
bool isolationTracksTransientRefVectorFixed_
Definition: Tau.h:343
bool embeddedSignalTracks_
Definition: Tau.h:346
bool embeddedLeadPFCand_
Definition: Tau.h:352
bool isolationPFGammaCandsRefVectorFixed_
Definition: Tau.h:389
bool embeddedLeadPFChargedHadrCand_
Definition: Tau.h:354
bool embeddedSignalPFNeutralHadrCands_
Definition: Tau.h:367
std::vector< pat::tau::TauCaloSpecific > caloSpecific_
holder for CaloTau info, or empty vector if PFTau
Definition: Tau.h:399
bool isolationPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:381
bool isolationPFCandsRefVectorFixed_
Definition: Tau.h:377
bool embeddedSignalPFCands_
Definition: Tau.h:359
bool isolationPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:385
bool embeddedIsolationTracks_
Definition: Tau.h:340
bool signalPFGammaCandsRefVectorFixed_
Definition: Tau.h:373
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
bool signalTracksTransientRefVectorFixed_
Definition: Tau.h:349
Tau::Tau ( const edm::RefToBase< reco::BaseTau > &  aTauRef)

constructor from a RefToBase to a reco tau (to be superseded by Ptr counterpart)

constructor from ref to reco::BaseTau

Definition at line 77 of file Tau.cc.

References caloSpecific_, edm::RefToBase< T >::get(), and pfSpecific_.

77  :
78  Lepton<reco::BaseTau>(aTauRef)
81  ,embeddedLeadTrack_(false)
82  ,embeddedSignalTracks_(false)
84  ,embeddedLeadPFCand_(false)
103 {
104  const reco::PFTau * pfTau = dynamic_cast<const reco::PFTau *>(aTauRef.get());
105  if (pfTau != 0) pfSpecific_.push_back(pat::tau::TauPFSpecific(*pfTau));
106  const reco::CaloTau * caloTau = dynamic_cast<const reco::CaloTau *>(aTauRef.get());
107  if (caloTau != 0) caloSpecific_.push_back(pat::tau::TauCaloSpecific(*caloTau));
108 }
bool embeddedLeadPFNeutralCand_
Definition: Tau.h:356
bool embeddedSignalPFChargedHadrCands_
Definition: Tau.h:363
bool embeddedIsolationPFChargedHadrCands_
Definition: Tau.h:379
bool embeddedIsolationPFCands_
Definition: Tau.h:375
bool signalPFCandsRefVectorFixed_
Definition: Tau.h:361
bool signalPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:369
bool embeddedIsolationPFNeutralHadrCands_
Definition: Tau.h:383
bool embeddedLeadTrack_
Definition: Tau.h:344
bool embeddedSignalPFGammaCands_
Definition: Tau.h:371
bool embeddedIsolationPFGammaCands_
Definition: Tau.h:387
bool signalPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:365
bool isolationTracksTransientRefVectorFixed_
Definition: Tau.h:343
bool embeddedSignalTracks_
Definition: Tau.h:346
bool embeddedLeadPFCand_
Definition: Tau.h:352
bool isolationPFGammaCandsRefVectorFixed_
Definition: Tau.h:389
bool embeddedLeadPFChargedHadrCand_
Definition: Tau.h:354
bool embeddedSignalPFNeutralHadrCands_
Definition: Tau.h:367
std::vector< pat::tau::TauCaloSpecific > caloSpecific_
holder for CaloTau info, or empty vector if PFTau
Definition: Tau.h:399
bool isolationPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:381
bool isolationPFCandsRefVectorFixed_
Definition: Tau.h:377
bool embeddedSignalPFCands_
Definition: Tau.h:359
bool isolationPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:385
bool embeddedIsolationTracks_
Definition: Tau.h:340
bool signalPFGammaCandsRefVectorFixed_
Definition: Tau.h:373
value_type const * get() const
Definition: RefToBase.h:212
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
bool signalTracksTransientRefVectorFixed_
Definition: Tau.h:349
Tau::Tau ( const edm::Ptr< reco::BaseTau > &  aTauRef)

constructor from a Ptr to a reco tau

constructor from ref to reco::BaseTau

Definition at line 111 of file Tau.cc.

References caloSpecific_, edm::Ptr< T >::get(), and pfSpecific_.

111  :
112  Lepton<reco::BaseTau>(aTauRef)
115  ,embeddedLeadTrack_(false)
116  ,embeddedSignalTracks_(false)
118  ,embeddedLeadPFCand_(false)
121  ,embeddedSignalPFCands_(false)
137 {
138  const reco::PFTau * pfTau = dynamic_cast<const reco::PFTau *>(aTauRef.get());
139  if (pfTau != 0) pfSpecific_.push_back(pat::tau::TauPFSpecific(*pfTau));
140  const reco::CaloTau * caloTau = dynamic_cast<const reco::CaloTau *>(aTauRef.get());
141  if (caloTau != 0) caloSpecific_.push_back(pat::tau::TauCaloSpecific(*caloTau));
142 }
bool embeddedLeadPFNeutralCand_
Definition: Tau.h:356
bool embeddedSignalPFChargedHadrCands_
Definition: Tau.h:363
bool embeddedIsolationPFChargedHadrCands_
Definition: Tau.h:379
bool embeddedIsolationPFCands_
Definition: Tau.h:375
bool signalPFCandsRefVectorFixed_
Definition: Tau.h:361
bool signalPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:369
bool embeddedIsolationPFNeutralHadrCands_
Definition: Tau.h:383
bool embeddedLeadTrack_
Definition: Tau.h:344
bool embeddedSignalPFGammaCands_
Definition: Tau.h:371
T const * get() const
Returns C++ pointer to the item.
Definition: Ptr.h:143
bool embeddedIsolationPFGammaCands_
Definition: Tau.h:387
bool signalPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:365
bool isolationTracksTransientRefVectorFixed_
Definition: Tau.h:343
bool embeddedSignalTracks_
Definition: Tau.h:346
bool embeddedLeadPFCand_
Definition: Tau.h:352
bool isolationPFGammaCandsRefVectorFixed_
Definition: Tau.h:389
bool embeddedLeadPFChargedHadrCand_
Definition: Tau.h:354
bool embeddedSignalPFNeutralHadrCands_
Definition: Tau.h:367
std::vector< pat::tau::TauCaloSpecific > caloSpecific_
holder for CaloTau info, or empty vector if PFTau
Definition: Tau.h:399
bool isolationPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:381
bool isolationPFCandsRefVectorFixed_
Definition: Tau.h:377
bool embeddedSignalPFCands_
Definition: Tau.h:359
bool isolationPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:385
bool embeddedIsolationTracks_
Definition: Tau.h:340
bool signalPFGammaCandsRefVectorFixed_
Definition: Tau.h:373
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
bool signalTracksTransientRefVectorFixed_
Definition: Tau.h:349
Tau::~Tau ( )
virtual

destructor

Definition at line 145 of file Tau.cc.

145  {
146 }

Member Function Documentation

void pat::Tau::addJECFactors ( const TauJetCorrFactors jec)
inlineprotected

add more sets of energy correction factors

Definition at line 335 of file Tau.h.

References jec_.

Referenced by pat::PATTauProducer::produce().

335 {jec_.push_back(jec); };
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
const std::vector< std::string > Tau::availableJECLevels ( const int &  set = 0) const

Definition at line 620 of file Tau.cc.

References jec_.

621 {
622  return set>=0 ? jec_.at(set).correctionLabels() : std::vector<std::string>();
623 }
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
const std::vector<std::string> pat::Tau::availableJECLevels ( const std::string &  set) const
inline

Definition at line 284 of file Tau.h.

References availableJECLevels(), and jecSet().

Referenced by availableJECLevels().

284 { return availableJECLevels(jecSet(set)); };
int jecSet(const std::string &label) const
return true if this jet carries the jet correction factors of a different set, for systematic studies...
Definition: Tau.cc:600
const std::vector< std::string > availableJECLevels(const int &set=0) const
Definition: Tau.cc:620
const std::vector< std::string > Tau::availableJECSets ( ) const

all available label-names of all sets of jet energy corrections

-— methods for jet corrections -— returns the labels of all available sets of jet energy corrections

Definition at line 610 of file Tau.cc.

References jec_.

611 {
612  std::vector<std::string> sets;
613  for ( std::vector<pat::TauJetCorrFactors>::const_iterator corrFactor = jec_.begin();
614  corrFactor != jec_.end(); ++corrFactor ) {
615  sets.push_back(corrFactor->jecSet());
616  }
617  return sets;
618 }
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
float pat::Tau::bremsRecoveryEOverPLead ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 226 of file Tau.h.

References pat::tau::TauPFSpecific::bremsRecoveryEOverPLead_, and pfSpecific().

const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
float pat::Tau::caloComp ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 238 of file Tau.h.

References pat::tau::TauPFSpecific::caloComp_, and pfSpecific().

238 { return pfSpecific().caloComp_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
const pat::tau::TauCaloSpecific & Tau::caloSpecific ( ) const

return CaloTau info or throw exception 'not CaloTau'

Definition at line 283 of file Tau.cc.

References caloSpecific_, edm::hlt::Exception, and isCaloTau().

Referenced by caloTauTagInfoRef(), etaetaMoment(), etaphiMoment(), isolationECALhitsEtSum(), isolationTracksPtSum(), leadTrackHCAL3x3hitsEtSum(), leadTrackHCAL3x3hottesthitDEta(), leadTracksignedSipt(), maximumHCALhitEt(), p4Jet(), phiphiMoment(), signalTracksInvariantMass(), and TracksInvariantMass().

283  {
284  if (!isCaloTau()) throw cms::Exception("Type Error") << "Requesting a CaloTau-specific information from a pat::Tau which wasn't made from a CaloTau.\n";
285  return caloSpecific_[0];
286 }
std::vector< pat::tau::TauCaloSpecific > caloSpecific_
holder for CaloTau info, or empty vector if PFTau
Definition: Tau.h:399
bool isCaloTau() const
Returns true if this pat::Tau was made from a reco::CaloTau.
Definition: Tau.h:119
reco::CaloTauTagInfoRef pat::Tau::caloTauTagInfoRef ( ) const
inline

Method copied from reco::CaloTau. Throws an exception if this pat::Tau was not made from a reco::CaloTau

Definition at line 124 of file Tau.h.

References caloSpecific(), and pat::tau::TauCaloSpecific::CaloTauTagInfoRef_.

124 { return caloSpecific().CaloTauTagInfoRef_; }
reco::CaloTauTagInfoRef CaloTauTagInfoRef_
const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
virtual Tau* pat::Tau::clone ( void  ) const
inlinevirtual

required reimplementation of the Candidate's clone method

Reimplemented from pat::Lepton< reco::BaseTau >.

Definition at line 72 of file Tau.h.

References Tau().

72 { return new Tau(*this); }
Tau()
default constructor
Definition: Tau.cc:13
const LorentzVector& pat::Tau::correctedP4 ( const std::string &  level,
const std::string &  set = "" 
) const
inline

p4 of the jet corrected up to the given level for the set of jet energy correction factors, which is currently in use

Definition at line 316 of file Tau.h.

References correctedTauJet(), and reco::LeafCandidate::p4().

316  {
317  return correctedTauJet(level, set).p4();
318  }
virtual const LorentzVector & p4() const GCC11_FINAL
four-momentum Lorentz vector
Tau correctedTauJet(const std::string &level, const std::string &set="") const
Definition: Tau.cc:659
tuple level
Definition: testEve_cfg.py:34
const LorentzVector& pat::Tau::correctedP4 ( const unsigned int &  level,
const unsigned int &  set = 0 
) const
inline

p4 of the jet corrected up to the given level for the set of jet energy correction factors, which is currently in use

Definition at line 321 of file Tau.h.

References correctedTauJet(), and reco::LeafCandidate::p4().

321  {
322  return correctedTauJet(level, set).p4();
323  }
virtual const LorentzVector & p4() const GCC11_FINAL
four-momentum Lorentz vector
Tau correctedTauJet(const std::string &level, const std::string &set="") const
Definition: Tau.cc:659
tuple level
Definition: testEve_cfg.py:34
Tau Tau::correctedTauJet ( const std::string &  level,
const std::string &  set = "" 
) const

copy of the jet corrected up to the given level for the set of jet energy correction factors, which is currently in use

copy of the jet with correction factor to target step for the set of correction factors, which is currently in use

Definition at line 659 of file Tau.cc.

References edm::hlt::Exception, customizeTrackingMonitorSeedNumber::idx, and jec_.

Referenced by correctedP4(), and correctedTauJet().

660 {
661  // rescale p4 of the jet; the update of current values is
662  // done within the called jecFactor function
663  for ( unsigned int idx = 0; idx < jec_.size(); ++idx ) {
664  if ( set.empty() || jec_.at(idx).jecSet() == set ) {
665  if ( jec_[idx].jecLevel(level) >= 0 )
666  return correctedTauJet(jec_[idx].jecLevel(level), idx);
667  else
668  throw cms::Exception("InvalidRequest")
669  << "This JEC level " << level << " does not exist. \n";
670  }
671  }
672  throw cms::Exception("InvalidRequest")
673  << "This JEC set " << set << " does not exist. \n";
674 }
Tau correctedTauJet(const std::string &level, const std::string &set="") const
Definition: Tau.cc:659
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
tuple idx
DEBUGGING if hasattr(process,&quot;trackMonIterativeTracking2012&quot;): print &quot;trackMonIterativeTracking2012 D...
tuple level
Definition: testEve_cfg.py:34
Tau Tau::correctedTauJet ( const unsigned int &  level,
const unsigned int &  set = 0 
) const

copy of the jet corrected up to the given level for the set of jet energy correction factors, which is currently in use

copy of the jet with correction factor to target step for the set of correction factors, which is currently in use

Definition at line 678 of file Tau.cc.

References correctedTauJet(), currentJECLevel(), currentJECSet(), jecFactor(), reco::LeafCandidate::p4(), and reco::LeafCandidate::setP4().

679 {
680  Tau correctedTauJet(*this);
681  //rescale p4 of the jet
683  // update current level and set
686  return correctedTauJet;
687 }
virtual const LorentzVector & p4() const GCC11_FINAL
four-momentum Lorentz vector
Tau correctedTauJet(const std::string &level, const std::string &set="") const
Definition: Tau.cc:659
std::string currentJECLevel() const
return the name of the current step of jet energy corrections
Definition: Tau.h:299
Analysis-level tau class.
Definition: Tau.h:50
float jecFactor(const std::string &level, const std::string &set="") const
Definition: Tau.cc:627
virtual void setP4(const LorentzVector &p4) GCC11_FINAL
set 4-momentum
tuple level
Definition: testEve_cfg.py:34
std::string currentJECSet() const
returns the label of the current set of jet energy corrections
Definition: Tau.h:295
std::string pat::Tau::currentJECLevel ( ) const
inline

return the name of the current step of jet energy corrections

Definition at line 299 of file Tau.h.

References currentJECLevel_, currentJECSet_, jec_, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by correctedTauJet(), and initializeJEC().

299  {
300  return currentJECSet_<jec_.size() ? jec_.at(currentJECSet_).jecLevel(currentJECLevel_) : std::string("ERROR");
301  }
unsigned int currentJECLevel_
Definition: Tau.h:414
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
unsigned int currentJECSet_
Definition: Tau.h:412
void pat::Tau::currentJECLevel ( const unsigned int &  level)
inlineprotected

update the current JEC level; used by correctedJet

Definition at line 333 of file Tau.h.

References currentJECLevel_, and testEve_cfg::level.

unsigned int currentJECLevel_
Definition: Tau.h:414
tuple level
Definition: testEve_cfg.py:34
std::string pat::Tau::currentJECSet ( ) const
inline

returns the label of the current set of jet energy corrections

Definition at line 295 of file Tau.h.

References currentJECSet_, jec_, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by correctedTauJet(), and initializeJEC().

295  {
296  return currentJECSet_<jec_.size() ? jec_.at(currentJECSet_).jecSet() : std::string("ERROR");
297  }
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
unsigned int currentJECSet_
Definition: Tau.h:412
void pat::Tau::currentJECSet ( const unsigned int &  set)
inlineprotected

update the current JEC set; used by correctedJet

Definition at line 331 of file Tau.h.

References currentJECSet_.

331 { currentJECSet_=set; };
unsigned int currentJECSet_
Definition: Tau.h:412
int pat::Tau::decayMode ( ) const
inline

reconstructed tau decay mode (specific to PFTau)

Definition at line 254 of file Tau.h.

References pat::tau::TauPFSpecific::decayMode_, and pfSpecific().

Referenced by setDecayMode().

254 { return pfSpecific().decayMode_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
float pat::Tau::ecalStripSumEOverPLead ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 223 of file Tau.h.

References pat::tau::TauPFSpecific::ecalStripSumEOverPLead_, and pfSpecific().

const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
bool pat::Tau::electronPreIDDecision ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 235 of file Tau.h.

References pat::tau::TauPFSpecific::electronPreIDDecision_, and pfSpecific().

const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
float pat::Tau::electronPreIDOutput ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 232 of file Tau.h.

References pat::tau::TauPFSpecific::electronPreIDOutput_, and pfSpecific().

232 { return pfSpecific().electronPreIDOutput_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
const reco::TrackRef& pat::Tau::electronPreIDTrack ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 229 of file Tau.h.

References pat::tau::TauPFSpecific::electronPreIDTrack_, and pfSpecific().

229 { return pfSpecific().electronPreIDTrack_; }
reco::TrackRef electronPreIDTrack_
Definition: TauPFSpecific.h:52
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
void Tau::embedIsolationPFCands ( )

method to store the isolation candidates internally

Definition at line 397 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedIsolationPFCands_, i, isolationPFCands_, isPFTau(), pfSpecific_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

397  {
398  if (!isPFTau() ) {//additional check with warning in pat::tau producer
399  return;
400  }
401  reco::PFCandidateRefVector candRefVec = pfSpecific_[0].selectedIsolationPFCands_;
402  for (unsigned int i = 0; i < candRefVec.size(); i++) {
403  isolationPFCands_.push_back(*candRefVec.at(i));
404  }
406 }
int i
Definition: DBlmapReader.cc:9
bool embeddedIsolationPFCands_
Definition: Tau.h:375
std::vector< reco::PFCandidate > isolationPFCands_
Definition: Tau.h:374
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedIsolationPFChargedHadrCands ( )

method to store the isolation charged hadrons candidates internally

Definition at line 408 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedIsolationPFChargedHadrCands_, i, isolationPFChargedHadrCands_, isPFTau(), pfSpecific_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

408  {
409  if (!isPFTau() ) {//additional check with warning in pat::tau producer
410  return;
411  }
412  reco::PFCandidateRefVector candRefVec = pfSpecific_[0].selectedIsolationPFChargedHadrCands_;
413  for (unsigned int i = 0; i < candRefVec.size(); i++) {
414  isolationPFChargedHadrCands_.push_back(*candRefVec.at(i));
415  }
417 }
int i
Definition: DBlmapReader.cc:9
bool embeddedIsolationPFChargedHadrCands_
Definition: Tau.h:379
std::vector< reco::PFCandidate > isolationPFChargedHadrCands_
Definition: Tau.h:378
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedIsolationPFGammaCands ( )

method to store the isolation gamma candidates internally

Definition at line 428 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedIsolationPFGammaCands_, i, isolationPFGammaCands_, isPFTau(), pfSpecific_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

428  {
429  if (!isPFTau() ) {//additional check with warning in pat::tau producer
430  return;
431  }
432  reco::PFCandidateRefVector candRefVec = pfSpecific_[0].selectedIsolationPFGammaCands_;
433  for (unsigned int i = 0; i < candRefVec.size(); i++) {
434  isolationPFGammaCands_.push_back(*candRefVec.at(i));
435  }
437 }
int i
Definition: DBlmapReader.cc:9
std::vector< reco::PFCandidate > isolationPFGammaCands_
Definition: Tau.h:386
bool embeddedIsolationPFGammaCands_
Definition: Tau.h:387
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedIsolationPFNeutralHadrCands ( )

method to store the isolation neutral hadrons candidates internally

Definition at line 418 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedIsolationPFNeutralHadrCands_, i, isolationPFNeutralHadrCands_, isPFTau(), pfSpecific_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

418  {
419  if (!isPFTau() ) {//additional check with warning in pat::tau producer
420  return;
421  }
422  reco::PFCandidateRefVector candRefVec = pfSpecific_[0].selectedIsolationPFNeutrHadrCands_;
423  for (unsigned int i = 0; i < candRefVec.size(); i++) {
424  isolationPFNeutralHadrCands_.push_back(*candRefVec.at(i));
425  }
427 }
int i
Definition: DBlmapReader.cc:9
std::vector< reco::PFCandidate > isolationPFNeutralHadrCands_
Definition: Tau.h:382
bool embeddedIsolationPFNeutralHadrCands_
Definition: Tau.h:383
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedIsolationTracks ( )

method to store the isolation tracks internally

Definition at line 212 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedIsolationTracks_, i, reco::BaseTau::isolationTracks(), isolationTracks_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

212  {
213  isolationTracks_.clear();
215  for (unsigned int i = 0; i < trackRefVec.size(); i++) {
216  isolationTracks_.push_back(*trackRefVec.at(i));
217  }
219 }
int i
Definition: DBlmapReader.cc:9
virtual const reco::TrackRefVector & isolationTracks() const
Definition: BaseTau.cc:30
std::vector< reco::Track > isolationTracks_
Definition: Tau.h:341
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
bool embeddedIsolationTracks_
Definition: Tau.h:340
void Tau::embedLeadPFCand ( )

method to store the leading candidate internally

  • PFTau specific content - method to store the leading candidate internally

Definition at line 323 of file Tau.cc.

References embeddedLeadPFCand_, isPFTau(), leadPFCand_, and pfSpecific_.

Referenced by pat::PATTauProducer::produce().

323  {
324  if (!isPFTau() ) {//additional check with warning in pat::tau producer
325  return;
326  }
327  leadPFCand_.clear();
328  if (pfSpecific_[0].leadPFCand_.isNonnull() ) {
329  leadPFCand_.push_back(*pfSpecific_[0].leadPFCand_); //already set in C-tor
330  embeddedLeadPFCand_ = true;
331  }
332 }
std::vector< reco::PFCandidate > leadPFCand_
Definition: Tau.h:351
bool embeddedLeadPFCand_
Definition: Tau.h:352
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedLeadPFChargedHadrCand ( )

method to store the leading charged hadron candidate internally

method to store the leading candidate internally

Definition at line 334 of file Tau.cc.

References embeddedLeadPFChargedHadrCand_, isPFTau(), leadPFChargedHadrCand_, and pfSpecific_.

Referenced by pat::PATTauProducer::produce().

334  {
335  if (!isPFTau() ) {//additional check with warning in pat::tau producer
336  return;
337  }
338  leadPFChargedHadrCand_.clear();
339  if (pfSpecific_[0].leadPFChargedHadrCand_.isNonnull() ) {
340  leadPFChargedHadrCand_.push_back(*pfSpecific_[0].leadPFChargedHadrCand_); //already set in C-tor
342  }
343 }
bool embeddedLeadPFChargedHadrCand_
Definition: Tau.h:354
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< reco::PFCandidate > leadPFChargedHadrCand_
Definition: Tau.h:353
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedLeadPFNeutralCand ( )

method to store the leading neutral candidate internally

method to store the leading candidate internally

Definition at line 345 of file Tau.cc.

References embeddedLeadPFNeutralCand_, isPFTau(), leadPFNeutralCand_, and pfSpecific_.

Referenced by pat::PATTauProducer::produce().

345  {
346  if (!isPFTau() ) {//additional check with warning in pat::tau producer
347  return;
348  }
349  leadPFNeutralCand_.clear();
350  if (pfSpecific_[0].leadPFNeutralCand_.isNonnull() ) {
351  leadPFNeutralCand_.push_back(*pfSpecific_[0].leadPFNeutralCand_); //already set in C-tor
353  }
354 }
bool embeddedLeadPFNeutralCand_
Definition: Tau.h:356
std::vector< reco::PFCandidate > leadPFNeutralCand_
Definition: Tau.h:355
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedLeadTrack ( )

method to store the leading track internally

method to store the isolation tracks internally

Definition at line 223 of file Tau.cc.

References embeddedLeadTrack_, reco::BaseTau::leadTrack(), and leadTrack_.

Referenced by pat::PATTauProducer::produce().

223  {
224  leadTrack_.clear();
225  if (reco::BaseTau::leadTrack().isNonnull()) {
226  leadTrack_.push_back(*reco::BaseTau::leadTrack());
227  embeddedLeadTrack_ = true;
228  }
229 }
virtual reco::TrackRef leadTrack() const
Definition: BaseTau.cc:26
bool embeddedLeadTrack_
Definition: Tau.h:344
std::vector< reco::Track > leadTrack_
Definition: Tau.h:345
void Tau::embedSignalPFCands ( )

method to store the signal candidates internally

Definition at line 356 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedSignalPFCands_, i, isPFTau(), pfSpecific_, signalPFCands_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

356  {
357  if (!isPFTau() ) {//additional check with warning in pat::tau producer
358  return;
359  }
360  reco::PFCandidateRefVector candRefVec = pfSpecific_[0].selectedSignalPFCands_;
361  for (unsigned int i = 0; i < candRefVec.size(); i++) {
362  signalPFCands_.push_back(*candRefVec.at(i));
363  }
364  embeddedSignalPFCands_ = true;
365 }
int i
Definition: DBlmapReader.cc:9
std::vector< reco::PFCandidate > signalPFCands_
Definition: Tau.h:358
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
bool embeddedSignalPFCands_
Definition: Tau.h:359
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedSignalPFChargedHadrCands ( )

method to store the signal charged hadrons candidates internally

Definition at line 366 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedSignalPFChargedHadrCands_, i, isPFTau(), pfSpecific_, signalPFChargedHadrCands_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

366  {
367  if (!isPFTau() ) {//additional check with warning in pat::tau producer
368  return;
369  }
370  reco::PFCandidateRefVector candRefVec = pfSpecific_[0].selectedSignalPFChargedHadrCands_;
371  for (unsigned int i = 0; i < candRefVec.size(); i++) {
372  signalPFChargedHadrCands_.push_back(*candRefVec.at(i));
373  }
375 }
int i
Definition: DBlmapReader.cc:9
bool embeddedSignalPFChargedHadrCands_
Definition: Tau.h:363
std::vector< reco::PFCandidate > signalPFChargedHadrCands_
Definition: Tau.h:362
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedSignalPFGammaCands ( )

method to store the signal gamma candidates internally

Definition at line 386 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedSignalPFGammaCands_, i, isPFTau(), pfSpecific_, signalPFGammaCands_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

386  {
387  if (!isPFTau() ) {//additional check with warning in pat::tau producer
388  return;
389  }
390  reco::PFCandidateRefVector candRefVec = pfSpecific_[0].selectedSignalPFGammaCands_;
391  for (unsigned int i = 0; i < candRefVec.size(); i++) {
392  signalPFGammaCands_.push_back(*candRefVec.at(i));
393  }
395 }
int i
Definition: DBlmapReader.cc:9
bool embeddedSignalPFGammaCands_
Definition: Tau.h:371
std::vector< reco::PFCandidate > signalPFGammaCands_
Definition: Tau.h:370
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedSignalPFNeutralHadrCands ( )

method to store the signal neutral hadrons candidates internally

Definition at line 376 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedSignalPFNeutralHadrCands_, i, isPFTau(), pfSpecific_, signalPFNeutralHadrCands_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

376  {
377  if (!isPFTau() ) {//additional check with warning in pat::tau producer
378  return;
379  }
380  reco::PFCandidateRefVector candRefVec = pfSpecific_[0].selectedSignalPFNeutrHadrCands_;
381  for (unsigned int i = 0; i < candRefVec.size(); i++) {
382  signalPFNeutralHadrCands_.push_back(*candRefVec.at(i));
383  }
385 }
int i
Definition: DBlmapReader.cc:9
std::vector< reco::PFCandidate > signalPFNeutralHadrCands_
Definition: Tau.h:366
bool embeddedSignalPFNeutralHadrCands_
Definition: Tau.h:367
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::embedSignalTracks ( )

method to store the signal tracks internally

method to store the isolation tracks internally

Definition at line 233 of file Tau.cc.

References edm::RefVector< C, T, F >::at(), embeddedSignalTracks_, i, reco::BaseTau::signalTracks(), signalTracks_, and edm::RefVector< C, T, F >::size().

Referenced by pat::PATTauProducer::produce().

233  {
234  signalTracks_.clear();
236  for (unsigned int i = 0; i < trackRefVec.size(); i++) {
237  signalTracks_.push_back(*trackRefVec.at(i));
238  }
239  embeddedSignalTracks_ = true;
240 }
int i
Definition: DBlmapReader.cc:9
std::vector< reco::Track > signalTracks_
Definition: Tau.h:347
bool embeddedSignalTracks_
Definition: Tau.h:346
virtual const reco::TrackRefVector & signalTracks() const
Definition: BaseTau.cc:28
value_type const at(size_type idx) const
Retrieve an element of the RefVector.
Definition: RefVector.h:76
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
float pat::Tau::emFraction ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 211 of file Tau.h.

References pat::tau::TauPFSpecific::emFraction_, and pfSpecific().

211 { return pfSpecific().emFraction_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
float Tau::etaetaMoment ( ) const

Definition at line 295 of file Tau.cc.

References caloSpecific(), pat::tau::TauCaloSpecific::etaetaMoment_, pat::tau::TauPFSpecific::etaetaMoment_, edm::hlt::Exception, isCaloTau(), isPFTau(), and pfSpecific().

296 {
297  if ( isCaloTau() ) return caloSpecific().etaetaMoment_;
298  if ( isPFTau() ) return pfSpecific().etaetaMoment_;
299  throw cms::Exception("Type Error") << "Requesting a CaloTau/PFTau-specific information from a pat::Tau which wasn't made from either a CaloTau or a PFTau.\n";
300 }
const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
bool isCaloTau() const
Returns true if this pat::Tau was made from a reco::CaloTau.
Definition: Tau.h:119
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
float Tau::etaphiMoment ( ) const

Definition at line 309 of file Tau.cc.

References caloSpecific(), pat::tau::TauCaloSpecific::etaphiMoment_, pat::tau::TauPFSpecific::etaphiMoment_, edm::hlt::Exception, isCaloTau(), isPFTau(), and pfSpecific().

310 {
311  if ( isCaloTau() ) return caloSpecific().etaphiMoment_;
312  if ( isPFTau() ) return pfSpecific().etaphiMoment_;
313  throw cms::Exception("Type Error") << "Requesting a CaloTau/PFTau-specific information from a pat::Tau which wasn't made from either a CaloTau or a PFTau.\n";
314 }
const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
bool isCaloTau() const
Returns true if this pat::Tau was made from a reco::CaloTau.
Definition: Tau.h:119
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
const reco::GenJet * Tau::genJet ( ) const

return matched GenJet, built from the visible particles of a generated tau

return the matched generated jet

Definition at line 250 of file Tau.cc.

References genJet_.

250  {
251  return (genJet_.size() > 0 ? &genJet_.front() : 0);
252 }
std::vector< reco::GenJet > genJet_
Definition: Tau.h:392
float pat::Tau::hcal3x3OverPLead ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 220 of file Tau.h.

References pat::tau::TauPFSpecific::hcal3x3OverPLead_, and pfSpecific().

220 { return pfSpecific().hcal3x3OverPLead_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
float pat::Tau::hcalMaxOverPLead ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 217 of file Tau.h.

References pat::tau::TauPFSpecific::hcalMaxOverPLead_, and pfSpecific().

217 { return pfSpecific().hcalMaxOverPLead_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
float pat::Tau::hcalTotOverPLead ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 214 of file Tau.h.

References pat::tau::TauPFSpecific::hcalTotOverPLead_, and pfSpecific().

214 { return pfSpecific().hcalTotOverPLead_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
void Tau::initializeJEC ( unsigned int  level,
const unsigned int  set = 0 
)
protected

initialize the jet to a given JEC level during creation starting from Uncorrected

============= -Tau-jet Energy Correction methods ============ (copied from DataFormats/PatCandidates/src/Jet.cc)

Definition at line 592 of file Tau.cc.

References currentJECLevel(), currentJECSet(), jec_, reco::LeafCandidate::p4(), and reco::LeafCandidate::setP4().

Referenced by pat::PATTauProducer::produce().

593 {
594  currentJECSet(set);
596  setP4(jec_[set].correction(level)*p4());
597 }
virtual const LorentzVector & p4() const GCC11_FINAL
four-momentum Lorentz vector
std::string currentJECLevel() const
return the name of the current step of jet energy corrections
Definition: Tau.h:299
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
virtual void setP4(const LorentzVector &p4) GCC11_FINAL
set 4-momentum
tuple level
Definition: testEve_cfg.py:34
std::string currentJECSet() const
returns the label of the current set of jet energy corrections
Definition: Tau.h:295
bool pat::Tau::isCaloTau ( ) const
inline

Returns true if this pat::Tau was made from a reco::CaloTau.

Definition at line 119 of file Tau.h.

References caloSpecific_.

Referenced by caloSpecific(), etaetaMoment(), etaphiMoment(), p4Jet(), and phiphiMoment().

119 { return !caloSpecific_.empty(); }
std::vector< pat::tau::TauCaloSpecific > caloSpecific_
holder for CaloTau info, or empty vector if PFTau
Definition: Tau.h:399
float pat::Tau::isolationECALhitsEtSum ( ) const
inline

Method copied from reco::CaloTau. Throws an exception if this pat::Tau was not made from a reco::CaloTau

Definition at line 145 of file Tau.h.

References caloSpecific(), and pat::tau::TauCaloSpecific::isolationECALhitsEtSum_.

const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
const reco::PFCandidateRefVector & Tau::isolationPFCands ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 524 of file Tau.cc.

References embeddedIsolationPFCands_, i, isolationPFCands_, isolationPFCandsRefVectorFixed_, isolationPFCandsTransientRefVector_, pfSpecific(), edm::RefVector< C, T, F >::push_back(), pat::tau::TauPFSpecific::selectedIsolationPFCands_, and edm::RefVector< C, T, F >::swap().

524  {
528  for (unsigned int i = 0; i < isolationPFCands_.size(); i++) {
530  }
533  }
535  } else
537 }
int i
Definition: DBlmapReader.cc:9
bool embeddedIsolationPFCands_
Definition: Tau.h:375
reco::PFCandidateRefVector isolationPFCandsTransientRefVector_
Definition: Tau.h:376
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
std::vector< reco::PFCandidate > isolationPFCands_
Definition: Tau.h:374
bool isolationPFCandsRefVectorFixed_
Definition: Tau.h:377
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
reco::PFCandidateRefVector selectedIsolationPFCands_
Definition: TauPFSpecific.h:37
const reco::PFCandidateRefVector & Tau::isolationPFChargedHadrCands ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 539 of file Tau.cc.

References embeddedIsolationPFChargedHadrCands_, i, isolationPFChargedHadrCands_, isolationPFChargedHadrCandsRefVectorFixed_, isolationPFChargedHadrCandsTransientRefVector_, pfSpecific(), edm::RefVector< C, T, F >::push_back(), pat::tau::TauPFSpecific::selectedIsolationPFChargedHadrCands_, and edm::RefVector< C, T, F >::swap().

539  {
543  for (unsigned int i = 0; i < isolationPFChargedHadrCands_.size(); i++) {
545  }
548  }
550  } else
552 }
int i
Definition: DBlmapReader.cc:9
reco::PFCandidateRefVector selectedIsolationPFChargedHadrCands_
Definition: TauPFSpecific.h:38
bool embeddedIsolationPFChargedHadrCands_
Definition: Tau.h:379
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
reco::PFCandidateRefVector isolationPFChargedHadrCandsTransientRefVector_
Definition: Tau.h:380
std::vector< reco::PFCandidate > isolationPFChargedHadrCands_
Definition: Tau.h:378
bool isolationPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:381
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
float pat::Tau::isolationPFChargedHadrCandsPtSum ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 202 of file Tau.h.

References pat::tau::TauPFSpecific::isolationPFChargedHadrCandsPtSum_, and pfSpecific().

const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
float isolationPFChargedHadrCandsPtSum_
Definition: TauPFSpecific.h:42
const reco::PFCandidateRefVector & Tau::isolationPFGammaCands ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 569 of file Tau.cc.

References embeddedIsolationPFGammaCands_, i, isolationPFGammaCands_, isolationPFGammaCandsRefVectorFixed_, isolationPFGammaCandsTransientRefVector_, pfSpecific(), edm::RefVector< C, T, F >::push_back(), pat::tau::TauPFSpecific::selectedIsolationPFGammaCands_, and edm::RefVector< C, T, F >::swap().

569  {
573  for (unsigned int i = 0; i < isolationPFGammaCands_.size(); i++) {
575  }
578  }
580  } else
582 }
int i
Definition: DBlmapReader.cc:9
reco::PFCandidateRefVector selectedIsolationPFGammaCands_
Definition: TauPFSpecific.h:40
std::vector< reco::PFCandidate > isolationPFGammaCands_
Definition: Tau.h:386
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
reco::PFCandidateRefVector isolationPFGammaCandsTransientRefVector_
Definition: Tau.h:388
bool embeddedIsolationPFGammaCands_
Definition: Tau.h:387
bool isolationPFGammaCandsRefVectorFixed_
Definition: Tau.h:389
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
float pat::Tau::isolationPFGammaCandsEtSum ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 205 of file Tau.h.

References pat::tau::TauPFSpecific::isolationPFGammaCandsEtSum_, and pfSpecific().

const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
const reco::PFCandidateRefVector & Tau::isolationPFNeutrHadrCands ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 554 of file Tau.cc.

References embeddedIsolationPFNeutralHadrCands_, i, isolationPFNeutralHadrCands_, isolationPFNeutralHadrCandsRefVectorFixed_, isolationPFNeutralHadrCandsTransientRefVector_, pfSpecific(), edm::RefVector< C, T, F >::push_back(), pat::tau::TauPFSpecific::selectedIsolationPFNeutrHadrCands_, and edm::RefVector< C, T, F >::swap().

554  {
558  for (unsigned int i = 0; i < isolationPFNeutralHadrCands_.size(); i++) {
560  }
563  }
565  } else
567 }
int i
Definition: DBlmapReader.cc:9
std::vector< reco::PFCandidate > isolationPFNeutralHadrCands_
Definition: Tau.h:382
bool embeddedIsolationPFNeutralHadrCands_
Definition: Tau.h:383
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
reco::PFCandidateRefVector isolationPFNeutralHadrCandsTransientRefVector_
Definition: Tau.h:384
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
reco::PFCandidateRefVector selectedIsolationPFNeutrHadrCands_
Definition: TauPFSpecific.h:39
bool isolationPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:385
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
const std::vector< reco::RecoTauPiZero > & Tau::isolationPiZeroCandidates ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 584 of file Tau.cc.

References pat::tau::TauPFSpecific::isolationPiZeroCandidates_, and pfSpecific().

584  {
586 }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
std::vector< reco::RecoTauPiZero > isolationPiZeroCandidates_
Definition: TauPFSpecific.h:41
const reco::TrackRefVector & Tau::isolationTracks ( ) const
virtual

override the reco::BaseTau::isolationTracks method, to access the internal storage of the isolation tracks

override the reco::BaseTau::isolationTracks method, to access the internal storage of the track

Reimplemented from reco::BaseTau.

Definition at line 166 of file Tau.cc.

References embeddedIsolationTracks_, i, reco::BaseTau::isolationTracks(), isolationTracks_, isolationTracksTransientRefVector_, isolationTracksTransientRefVectorFixed_, edm::RefVector< C, T, F >::push_back(), and edm::RefVector< C, T, F >::swap().

166  {
169  reco::TrackRefVector trackRefVec;
170  for (unsigned int i = 0; i < isolationTracks_.size(); i++) {
171  trackRefVec.push_back(reco::TrackRef(&isolationTracks_, i));
172  }
175  }
177  } else {
179  }
180 }
int i
Definition: DBlmapReader.cc:9
virtual const reco::TrackRefVector & isolationTracks() const
Definition: BaseTau.cc:30
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
bool isolationTracksTransientRefVectorFixed_
Definition: Tau.h:343
std::vector< reco::Track > isolationTracks_
Definition: Tau.h:341
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
bool embeddedIsolationTracks_
Definition: Tau.h:340
reco::TrackRefVector isolationTracksTransientRefVector_
Definition: Tau.h:342
float pat::Tau::isolationTracksPtSum ( ) const
inline

Method copied from reco::CaloTau. Throws an exception if this pat::Tau was not made from a reco::CaloTau

Definition at line 142 of file Tau.h.

References caloSpecific(), and pat::tau::TauCaloSpecific::isolationTracksPtSum_.

const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
bool pat::Tau::isPFTau ( ) const
inline
bool Tau::isTauIDAvailable ( const std::string &  name) const

Returns true if a specific ID is available in this pat::Tau.

Definition at line 270 of file Tau.cc.

References tauIDs_.

270  {
271  for (std::vector<IdPair>::const_iterator it = tauIDs_.begin(), ed = tauIDs_.end(); it != ed; ++it) {
272  if (it->first == name) return true;
273  }
274  return false;
275 }
std::vector< IdPair > tauIDs_
Definition: Tau.h:395
float Tau::jecFactor ( const std::string &  level,
const std::string &  set = "" 
) const

correction factor to the given level for a specific set of correction factors, starting from the current level

Definition at line 627 of file Tau.cc.

References edm::hlt::Exception, customizeTrackingMonitorSeedNumber::idx, and jec_.

Referenced by correctedTauJet().

628 {
629  for ( unsigned int idx = 0; idx < jec_.size(); ++idx ) {
630  if ( set.empty() || jec_.at(idx).jecSet() == set ){
631  if ( jec_[idx].jecLevel(level) >= 0 )
632  return jecFactor(jec_[idx].jecLevel(level), idx);
633  else
634  throw cms::Exception("InvalidRequest")
635  << "This JEC level " << level << " does not exist. \n";
636  }
637  }
638  throw cms::Exception("InvalidRequest")
639  << "This jet does not carry any jet energy correction factor information \n"
640  << "for a jet energy correction set with label " << set << "\n";
641 }
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
tuple idx
DEBUGGING if hasattr(process,&quot;trackMonIterativeTracking2012&quot;): print &quot;trackMonIterativeTracking2012 D...
float jecFactor(const std::string &level, const std::string &set="") const
Definition: Tau.cc:627
tuple level
Definition: testEve_cfg.py:34
float Tau::jecFactor ( const unsigned int &  level,
const unsigned int &  set = 0 
) const

correction factor to the given level for a specific set of correction factors, starting from the current level

Definition at line 645 of file Tau.cc.

References currentJECLevel_, currentJECSet_, edm::hlt::Exception, jec_, jecSetAvailable(), and jecSetsAvailable().

646 {
647  if ( !jecSetsAvailable() )
648  throw cms::Exception("InvalidRequest")
649  << "This jet does not carry any jet energy correction factor information \n";
650  if ( !jecSetAvailable(set) )
651  throw cms::Exception("InvalidRequest")
652  << "This jet does not carry any jet energy correction factor information \n"
653  << "for a jet energy correction set with index " << set << "\n";
654  return jec_.at(set).correction(level)/jec_.at(currentJECSet_).correction(currentJECLevel_);
655 }
bool jecSetAvailable(const std::string &set) const
Definition: Tau.h:290
unsigned int currentJECLevel_
Definition: Tau.h:414
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
bool jecSetsAvailable() const
Definition: Tau.h:287
tuple level
Definition: testEve_cfg.py:34
unsigned int currentJECSet_
Definition: Tau.h:412
int Tau::jecSet ( const std::string &  label) const
protected

return true if this jet carries the jet correction factors of a different set, for systematic studies

index of the set of jec factors with given label; returns -1 if no set of jec factors exists with the given label

Definition at line 600 of file Tau.cc.

References jec_.

Referenced by availableJECLevels(), and jecSetAvailable().

601 {
602  for ( std::vector<pat::TauJetCorrFactors>::const_iterator corrFactor = jec_.begin();
603  corrFactor != jec_.end(); ++corrFactor ) {
604  if ( corrFactor->jecSet() == set ) return corrFactor-jec_.begin();
605  }
606  return -1;
607 }
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
bool pat::Tau::jecSetAvailable ( const std::string &  set) const
inline

returns true if the jet carries a set of jet energy correction factors with the given label

Definition at line 290 of file Tau.h.

References jecSet().

Referenced by jecFactor().

290 {return (jecSet(set) >= 0); };
int jecSet(const std::string &label) const
return true if this jet carries the jet correction factors of a different set, for systematic studies...
Definition: Tau.cc:600
bool pat::Tau::jecSetAvailable ( const unsigned int &  set) const
inline

returns true if the jet carries a set of jet energy correction factors with the given label

Definition at line 293 of file Tau.h.

References jec_.

293 {return (set < jec_.size()); };
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
bool pat::Tau::jecSetsAvailable ( ) const
inline

returns true if the jet carries jet energy correction information at all

Definition at line 287 of file Tau.h.

References jec_.

Referenced by jecFactor().

287 { return !jec_.empty(); }
std::vector< pat::TauJetCorrFactors > jec_
Definition: Tau.h:409
const reco::PFCandidateRef Tau::leadPFCand ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 453 of file Tau.cc.

References embeddedLeadPFCand_, pat::tau::TauPFSpecific::leadPFCand_, leadPFCand_, and pfSpecific().

453  {
455  return pfSpecific().leadPFCand_;
456  else
458 }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
std::vector< reco::PFCandidate > leadPFCand_
Definition: Tau.h:351
bool embeddedLeadPFCand_
Definition: Tau.h:352
edm::Ref< PFCandidateCollection > PFCandidateRef
persistent reference to a PFCandidate
reco::PFCandidateRef leadPFCand_
Definition: TauPFSpecific.h:31
const reco::PFCandidateRef Tau::leadPFChargedHadrCand ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 439 of file Tau.cc.

References embeddedLeadPFChargedHadrCand_, pat::tau::TauPFSpecific::leadPFChargedHadrCand_, leadPFChargedHadrCand_, and pfSpecific().

439  {
442  else
444 }
reco::PFCandidateRef leadPFChargedHadrCand_
Definition: TauPFSpecific.h:28
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
edm::Ref< PFCandidateCollection > PFCandidateRef
persistent reference to a PFCandidate
bool embeddedLeadPFChargedHadrCand_
Definition: Tau.h:354
std::vector< reco::PFCandidate > leadPFChargedHadrCand_
Definition: Tau.h:353
float pat::Tau::leadPFChargedHadrCandsignedSipt ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 163 of file Tau.h.

References pat::tau::TauPFSpecific::leadPFChargedHadrCandsignedSipt_, and pfSpecific().

float leadPFChargedHadrCandsignedSipt_
Definition: TauPFSpecific.h:29
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
const reco::PFCandidateRef Tau::leadPFNeutralCand ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 446 of file Tau.cc.

References embeddedLeadPFNeutralCand_, pat::tau::TauPFSpecific::leadPFNeutralCand_, leadPFNeutralCand_, and pfSpecific().

446  {
449  else
451 }
bool embeddedLeadPFNeutralCand_
Definition: Tau.h:356
std::vector< reco::PFCandidate > leadPFNeutralCand_
Definition: Tau.h:355
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
edm::Ref< PFCandidateCollection > PFCandidateRef
persistent reference to a PFCandidate
reco::PFCandidateRef leadPFNeutralCand_
Definition: TauPFSpecific.h:30
reco::TrackRef Tau::leadTrack ( ) const
virtual

override the reco::BaseTau::leadTrack method, to access the internal storage of the leading track

override the reco::BaseTau::track method, to access the internal storage of the track

Reimplemented from reco::BaseTau.

Definition at line 184 of file Tau.cc.

References embeddedLeadTrack_, reco::BaseTau::leadTrack(), and leadTrack_.

184  {
185  if (embeddedLeadTrack_) {
186  return reco::TrackRef(&leadTrack_, 0);
187  } else {
188  return reco::BaseTau::leadTrack();
189  }
190 }
virtual reco::TrackRef leadTrack() const
Definition: BaseTau.cc:26
bool embeddedLeadTrack_
Definition: Tau.h:344
edm::Ref< TrackCollection > TrackRef
persistent reference to a Track
Definition: TrackFwd.h:14
std::vector< reco::Track > leadTrack_
Definition: Tau.h:345
float pat::Tau::leadTrackHCAL3x3hitsEtSum ( ) const
inline

Method copied from reco::CaloTau. Throws an exception if this pat::Tau was not made from a reco::CaloTau

Definition at line 130 of file Tau.h.

References caloSpecific(), and pat::tau::TauCaloSpecific::leadTrackHCAL3x3hitsEtSum_.

const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
float pat::Tau::leadTrackHCAL3x3hottesthitDEta ( ) const
inline

Method copied from reco::CaloTau. Throws an exception if this pat::Tau was not made from a reco::CaloTau

Definition at line 133 of file Tau.h.

References caloSpecific(), and pat::tau::TauCaloSpecific::leadTrackHCAL3x3hottesthitDEta_.

const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
float pat::Tau::leadTracksignedSipt ( ) const
inline

Method copied from reco::CaloTau. Throws an exception if this pat::Tau was not made from a reco::CaloTau

Definition at line 127 of file Tau.h.

References caloSpecific(), and pat::tau::TauCaloSpecific::leadTracksignedSipt_.

const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
float pat::Tau::maximumHCALhitEt ( ) const
inline

Method copied from reco::CaloTau. Throws an exception if this pat::Tau was not made from a reco::CaloTau

Definition at line 148 of file Tau.h.

References caloSpecific(), and pat::tau::TauCaloSpecific::maximumHCALhitEt_.

148 { return caloSpecific().maximumHCALhitEt_; }
const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
float pat::Tau::maximumHCALPFClusterEt ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 208 of file Tau.h.

References pat::tau::TauPFSpecific::maximumHCALPFClusterEt_, and pfSpecific().

const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
bool pat::Tau::muonDecision ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 244 of file Tau.h.

References pat::tau::TauPFSpecific::muonDecision_, and pfSpecific().

244 { return pfSpecific().muonDecision_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
const reco::Candidate::LorentzVector & Tau::p4Jet ( ) const

Methods copied from reco::Jet. (accessible from reco::CaloTau/reco::PFTau via reco::CaloTauTagInfo/reco::PFTauTagInfo)

Definition at line 288 of file Tau.cc.

References caloSpecific(), edm::hlt::Exception, isCaloTau(), isPFTau(), pat::tau::TauCaloSpecific::p4Jet_, pat::tau::TauPFSpecific::p4Jet_, and pfSpecific().

289 {
290  if ( isCaloTau() ) return caloSpecific().p4Jet_;
291  if ( isPFTau() ) return pfSpecific().p4Jet_;
292  throw cms::Exception("Type Error") << "Requesting a CaloTau/PFTau-specific information from a pat::Tau which wasn't made from either a CaloTau or a PFTau.\n";
293 }
reco::Candidate::LorentzVector p4Jet_
Definition: TauPFSpecific.h:60
const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
bool isCaloTau() const
Returns true if this pat::Tau was made from a reco::CaloTau.
Definition: Tau.h:119
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
reco::Candidate::LorentzVector p4Jet_
const reco::PFJetRef& pat::Tau::pfJetRef ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 157 of file Tau.h.

References pat::tau::TauPFSpecific::pfJetRef_, and pfSpecific().

157 { return pfSpecific().pfJetRef_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
reco::PFJetRef pfJetRef_
Definition: TauPFSpecific.h:27
const pat::tau::TauPFSpecific & Tau::pfSpecific ( ) const

return PFTau info or throw exception 'not PFTau'

Definition at line 278 of file Tau.cc.

References edm::hlt::Exception, isPFTau(), and pfSpecific_.

Referenced by bremsRecoveryEOverPLead(), caloComp(), decayMode(), ecalStripSumEOverPLead(), electronPreIDDecision(), electronPreIDOutput(), electronPreIDTrack(), emFraction(), etaetaMoment(), etaphiMoment(), hcal3x3OverPLead(), hcalMaxOverPLead(), hcalTotOverPLead(), isolationPFCands(), isolationPFChargedHadrCands(), isolationPFChargedHadrCandsPtSum(), isolationPFGammaCands(), isolationPFGammaCandsEtSum(), isolationPFNeutrHadrCands(), isolationPiZeroCandidates(), leadPFCand(), leadPFChargedHadrCand(), leadPFChargedHadrCandsignedSipt(), leadPFNeutralCand(), maximumHCALPFClusterEt(), muonDecision(), p4Jet(), pfJetRef(), phiphiMoment(), segComp(), signalPFCands(), signalPFChargedHadrCands(), signalPFGammaCands(), signalPFNeutrHadrCands(), and signalPiZeroCandidates().

278  {
279  if (!isPFTau()) throw cms::Exception("Type Error") << "Requesting a PFTau-specific information from a pat::Tau which wasn't made from a PFTau.\n";
280  return pfSpecific_[0];
281 }
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
float Tau::phiphiMoment ( ) const

Definition at line 302 of file Tau.cc.

References caloSpecific(), edm::hlt::Exception, isCaloTau(), isPFTau(), pfSpecific(), pat::tau::TauCaloSpecific::phiphiMoment_, and pat::tau::TauPFSpecific::phiphiMoment_.

303 {
304  if ( isCaloTau() ) return caloSpecific().phiphiMoment_;
305  if ( isPFTau() ) return pfSpecific().phiphiMoment_;
306  throw cms::Exception("Type Error") << "Requesting a CaloTau/PFTau-specific information from a pat::Tau which wasn't made from either a CaloTau or a PFTau.\n";
307 }
const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
bool isCaloTau() const
Returns true if this pat::Tau was made from a reco::CaloTau.
Definition: Tau.h:119
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
float pat::Tau::segComp ( ) const
inline

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 241 of file Tau.h.

References pfSpecific(), and pat::tau::TauPFSpecific::segComp_.

241 { return pfSpecific().segComp_; }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
void Tau::setDecayMode ( int  decayMode)

set decay mode

Definition at line 316 of file Tau.cc.

References decayMode(), edm::hlt::Exception, isPFTau(), and pfSpecific_.

Referenced by pat::PATTauProducer::produce().

317 {
318  if (!isPFTau()) throw cms::Exception("Type Error") << "Requesting a PFTau-specific information from a pat::Tau which wasn't made from a PFTau.\n";
319  pfSpecific_[0].decayMode_ = decayMode;
320 }
int decayMode() const
reconstructed tau decay mode (specific to PFTau)
Definition: Tau.h:254
bool isPFTau() const
Returns true if this pat::Tau was made from a reco::PFTau.
Definition: Tau.h:152
std::vector< pat::tau::TauPFSpecific > pfSpecific_
holder for PFTau info, or empty vector if CaloTau
Definition: Tau.h:403
void Tau::setGenJet ( const reco::GenJetRef ref)

set the matched GenJet

method to set the matched generated jet

Definition at line 244 of file Tau.cc.

References genJet_.

Referenced by pat::PATTauProducer::produce().

244  {
245  genJet_.clear();
246  genJet_.push_back(*gj);
247 }
std::vector< reco::GenJet > genJet_
Definition: Tau.h:392
void pat::Tau::setTauIDs ( const std::vector< IdPair > &  ids)
inline

Store multiple tau ID values, discarding existing ones The first one in the list becomes the 'default' tau id

Definition at line 273 of file Tau.h.

References tauIDs_.

Referenced by pat::PATTauProducer::produce().

273 { tauIDs_ = ids; }
std::vector< IdPair > tauIDs_
Definition: Tau.h:395
const reco::PFCandidateRefVector & Tau::signalPFCands ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 460 of file Tau.cc.

References embeddedSignalPFCands_, i, pfSpecific(), edm::RefVector< C, T, F >::push_back(), pat::tau::TauPFSpecific::selectedSignalPFCands_, signalPFCands_, signalPFCandsRefVectorFixed_, signalPFCandsTransientRefVector_, and edm::RefVector< C, T, F >::swap().

460  {
464  for (unsigned int i = 0; i < signalPFCands_.size(); i++) {
466  }
469  }
471  } else
473 }
int i
Definition: DBlmapReader.cc:9
reco::PFCandidateRefVector signalPFCandsTransientRefVector_
Definition: Tau.h:360
std::vector< reco::PFCandidate > signalPFCands_
Definition: Tau.h:358
reco::PFCandidateRefVector selectedSignalPFCands_
Definition: TauPFSpecific.h:32
bool signalPFCandsRefVectorFixed_
Definition: Tau.h:361
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
bool embeddedSignalPFCands_
Definition: Tau.h:359
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
const reco::PFCandidateRefVector & Tau::signalPFChargedHadrCands ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 475 of file Tau.cc.

References embeddedSignalPFChargedHadrCands_, i, pfSpecific(), edm::RefVector< C, T, F >::push_back(), pat::tau::TauPFSpecific::selectedSignalPFChargedHadrCands_, signalPFChargedHadrCands_, signalPFChargedHadrCandsRefVectorFixed_, signalPFChargedHadrCandsTransientRefVector_, and edm::RefVector< C, T, F >::swap().

475  {
479  for (unsigned int i = 0; i < signalPFChargedHadrCands_.size(); i++) {
481  }
484  }
486  } else
488 }
int i
Definition: DBlmapReader.cc:9
bool embeddedSignalPFChargedHadrCands_
Definition: Tau.h:363
reco::PFCandidateRefVector signalPFChargedHadrCandsTransientRefVector_
Definition: Tau.h:364
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
std::vector< reco::PFCandidate > signalPFChargedHadrCands_
Definition: Tau.h:362
bool signalPFChargedHadrCandsRefVectorFixed_
Definition: Tau.h:365
reco::PFCandidateRefVector selectedSignalPFChargedHadrCands_
Definition: TauPFSpecific.h:33
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
const reco::PFCandidateRefVector & Tau::signalPFGammaCands ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 505 of file Tau.cc.

References embeddedSignalPFGammaCands_, i, pfSpecific(), edm::RefVector< C, T, F >::push_back(), pat::tau::TauPFSpecific::selectedSignalPFGammaCands_, signalPFGammaCands_, signalPFGammaCandsRefVectorFixed_, signalPFGammaCandsTransientRefVector_, and edm::RefVector< C, T, F >::swap().

505  {
509  for (unsigned int i = 0; i < signalPFGammaCands_.size(); i++) {
511  }
514  }
516  } else
518 }
int i
Definition: DBlmapReader.cc:9
reco::PFCandidateRefVector signalPFGammaCandsTransientRefVector_
Definition: Tau.h:372
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
bool embeddedSignalPFGammaCands_
Definition: Tau.h:371
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
std::vector< reco::PFCandidate > signalPFGammaCands_
Definition: Tau.h:370
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
reco::PFCandidateRefVector selectedSignalPFGammaCands_
Definition: TauPFSpecific.h:35
bool signalPFGammaCandsRefVectorFixed_
Definition: Tau.h:373
const reco::PFCandidateRefVector & Tau::signalPFNeutrHadrCands ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 490 of file Tau.cc.

References embeddedSignalPFNeutralHadrCands_, i, pfSpecific(), edm::RefVector< C, T, F >::push_back(), pat::tau::TauPFSpecific::selectedSignalPFNeutrHadrCands_, signalPFNeutralHadrCands_, signalPFNeutralHadrCandsRefVectorFixed_, signalPFNeutralHadrCandsTransientRefVector_, and edm::RefVector< C, T, F >::swap().

490  {
494  for (unsigned int i = 0; i < signalPFNeutralHadrCands_.size(); i++) {
496  }
499  }
501  } else
503 }
int i
Definition: DBlmapReader.cc:9
std::vector< reco::PFCandidate > signalPFNeutralHadrCands_
Definition: Tau.h:366
bool signalPFNeutralHadrCandsRefVectorFixed_
Definition: Tau.h:369
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
reco::PFCandidateRefVector selectedSignalPFNeutrHadrCands_
Definition: TauPFSpecific.h:34
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
bool embeddedSignalPFNeutralHadrCands_
Definition: Tau.h:367
reco::PFCandidateRefVector signalPFNeutralHadrCandsTransientRefVector_
Definition: Tau.h:368
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
const std::vector< reco::RecoTauPiZero > & Tau::signalPiZeroCandidates ( ) const

Method copied from reco::PFTau. Throws an exception if this pat::Tau was not made from a reco::PFTau

Definition at line 520 of file Tau.cc.

References pfSpecific(), and pat::tau::TauPFSpecific::signalPiZeroCandidates_.

520  {
522 }
const pat::tau::TauPFSpecific & pfSpecific() const
return PFTau info or throw exception &#39;not PFTau&#39;
Definition: Tau.cc:278
std::vector< reco::RecoTauPiZero > signalPiZeroCandidates_
Definition: TauPFSpecific.h:36
const reco::TrackRefVector & Tau::signalTracks ( ) const
virtual

override the reco::BaseTau::signalTracks method, to access the internal storage of the signal tracks

override the reco::BaseTau::track method, to access the internal storage of the track

Reimplemented from reco::BaseTau.

Definition at line 194 of file Tau.cc.

References embeddedSignalTracks_, i, edm::RefVector< C, T, F >::push_back(), reco::BaseTau::signalTracks(), signalTracks_, signalTracksTransientRefVector_, signalTracksTransientRefVectorFixed_, and edm::RefVector< C, T, F >::swap().

194  {
195  if (embeddedSignalTracks_) {
196  reco::TrackRefVector trackRefVec;
198  for (unsigned int i = 0; i < signalTracks_.size(); i++) {
199  trackRefVec.push_back(reco::TrackRef(&signalTracks_, i));
200  }
203  }
205  } else {
207  }
208 }
int i
Definition: DBlmapReader.cc:9
reco::TrackRefVector signalTracksTransientRefVector_
Definition: Tau.h:348
std::vector< reco::Track > signalTracks_
Definition: Tau.h:347
void swap(RefVector< C, T, F > &other) noexcept
Swap two vectors.
Definition: RefVector.h:162
bool embeddedSignalTracks_
Definition: Tau.h:346
virtual const reco::TrackRefVector & signalTracks() const
Definition: BaseTau.cc:28
void push_back(value_type const &ref)
Add a Ref&lt;C, T&gt; to the RefVector.
Definition: RefVector.h:64
bool signalTracksTransientRefVectorFixed_
Definition: Tau.h:349
float pat::Tau::signalTracksInvariantMass ( ) const
inline

Method copied from reco::CaloTau. Throws an exception if this pat::Tau was not made from a reco::CaloTau

Definition at line 136 of file Tau.h.

References caloSpecific(), and pat::tau::TauCaloSpecific::signalTracksInvariantMass_.

const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283
float Tau::tauID ( const std::string &  name) const

Returns a specific tau ID associated to the pat::Tau given its name For cut-based IDs, the value is 1.0 for good, 0.0 for bad. The names are defined within the configuration parameterset "tauIDSources" in PhysicsTools/PatAlgos/python/producersLayer1/tauProducer_cfi.py . Note: an exception is thrown if the specified ID is not available

Definition at line 256 of file Tau.cc.

References tauIDs_.

256  {
257  for (std::vector<IdPair>::const_iterator it = tauIDs_.begin(), ed = tauIDs_.end(); it != ed; ++it) {
258  if (it->first == name) return it->second;
259  }
260  cms::Exception ex("Key not found");
261  ex << "pat::Tau: the ID " << name << " can't be found in this pat::Tau.\n";
262  ex << "The available IDs are: ";
263  for (std::vector<IdPair>::const_iterator it = tauIDs_.begin(), ed = tauIDs_.end(); it != ed; ++it) {
264  ex << "'" << it->first << "' ";
265  }
266  ex << ".\n";
267  throw ex;
268 }
std::vector< IdPair > tauIDs_
Definition: Tau.h:395
float pat::Tau::tauID ( const char *  name) const
inline

Definition at line 265 of file Tau.h.

References AlCaHLTBitMon_QueryRunRegistry::string, and tauID().

Referenced by tauID().

265 {return tauID( std::string(name) );}
float tauID(const std::string &name) const
Definition: Tau.cc:256
const std::vector<IdPair>& pat::Tau::tauIDs ( ) const
inline

Returns all the tau IDs in the form of <name,value> pairs The 'default' ID is the first in the list

Definition at line 270 of file Tau.h.

References tauIDs_.

270 { return tauIDs_; }
std::vector< IdPair > tauIDs_
Definition: Tau.h:395
float pat::Tau::TracksInvariantMass ( ) const
inline

Method copied from reco::CaloTau. Throws an exception if this pat::Tau was not made from a reco::CaloTau

Definition at line 139 of file Tau.h.

References caloSpecific(), and pat::tau::TauCaloSpecific::TracksInvariantMass_.

139 { return caloSpecific().TracksInvariantMass_; }
const pat::tau::TauCaloSpecific & caloSpecific() const
return CaloTau info or throw exception &#39;not CaloTau&#39;
Definition: Tau.cc:283

Friends And Related Function Documentation

friend class PATTauProducer
friend

make friends with PATTauProducer so that it can set the initial jet energy scale unequal to raw calling the private initializeJEC function, which should be non accessible to any other user

Definition at line 54 of file Tau.h.

std::ostream& reco::operator<< ( std::ostream &  out,
const Tau obj 
)
friend

pipe operator (introduced to use pat::Tau with PFTopProjectors)

Member Data Documentation

std::vector<pat::tau::TauCaloSpecific> pat::Tau::caloSpecific_
protected

holder for CaloTau info, or empty vector if PFTau

Definition at line 399 of file Tau.h.

Referenced by caloSpecific(), isCaloTau(), and Tau().

unsigned int pat::Tau::currentJECLevel_
protected

Definition at line 414 of file Tau.h.

Referenced by currentJECLevel(), and jecFactor().

unsigned int pat::Tau::currentJECSet_
protected

Definition at line 412 of file Tau.h.

Referenced by currentJECLevel(), currentJECSet(), and jecFactor().

bool pat::Tau::embeddedIsolationPFCands_
protected

Definition at line 375 of file Tau.h.

Referenced by embedIsolationPFCands(), and isolationPFCands().

bool pat::Tau::embeddedIsolationPFChargedHadrCands_
protected

Definition at line 379 of file Tau.h.

Referenced by embedIsolationPFChargedHadrCands(), and isolationPFChargedHadrCands().

bool pat::Tau::embeddedIsolationPFGammaCands_
protected

Definition at line 387 of file Tau.h.

Referenced by embedIsolationPFGammaCands(), and isolationPFGammaCands().

bool pat::Tau::embeddedIsolationPFNeutralHadrCands_
protected

Definition at line 383 of file Tau.h.

Referenced by embedIsolationPFNeutralHadrCands(), and isolationPFNeutrHadrCands().

bool pat::Tau::embeddedIsolationTracks_
protected

Definition at line 340 of file Tau.h.

Referenced by embedIsolationTracks(), and isolationTracks().

bool pat::Tau::embeddedLeadPFCand_
protected

Definition at line 352 of file Tau.h.

Referenced by embedLeadPFCand(), and leadPFCand().

bool pat::Tau::embeddedLeadPFChargedHadrCand_
protected

Definition at line 354 of file Tau.h.

Referenced by embedLeadPFChargedHadrCand(), and leadPFChargedHadrCand().

bool pat::Tau::embeddedLeadPFNeutralCand_
protected

Definition at line 356 of file Tau.h.

Referenced by embedLeadPFNeutralCand(), and leadPFNeutralCand().

bool pat::Tau::embeddedLeadTrack_
protected

Definition at line 344 of file Tau.h.

Referenced by embedLeadTrack(), and leadTrack().

bool pat::Tau::embeddedSignalPFCands_
protected

Definition at line 359 of file Tau.h.

Referenced by embedSignalPFCands(), and signalPFCands().

bool pat::Tau::embeddedSignalPFChargedHadrCands_
protected

Definition at line 363 of file Tau.h.

Referenced by embedSignalPFChargedHadrCands(), and signalPFChargedHadrCands().

bool pat::Tau::embeddedSignalPFGammaCands_
protected

Definition at line 371 of file Tau.h.

Referenced by embedSignalPFGammaCands(), and signalPFGammaCands().

bool pat::Tau::embeddedSignalPFNeutralHadrCands_
protected

Definition at line 367 of file Tau.h.

Referenced by embedSignalPFNeutralHadrCands(), and signalPFNeutrHadrCands().

bool pat::Tau::embeddedSignalTracks_
protected

Definition at line 346 of file Tau.h.

Referenced by embedSignalTracks(), and signalTracks().

std::vector<reco::GenJet> pat::Tau::genJet_
protected

Definition at line 392 of file Tau.h.

Referenced by genJet(), and setGenJet().

std::vector<reco::PFCandidate> pat::Tau::isolationPFCands_
protected

Definition at line 374 of file Tau.h.

Referenced by embedIsolationPFCands(), and isolationPFCands().

bool pat::Tau::isolationPFCandsRefVectorFixed_
mutableprotected

Definition at line 377 of file Tau.h.

Referenced by isolationPFCands().

reco::PFCandidateRefVector pat::Tau::isolationPFCandsTransientRefVector_
mutableprotected

Definition at line 376 of file Tau.h.

Referenced by isolationPFCands().

std::vector<reco::PFCandidate> pat::Tau::isolationPFChargedHadrCands_
protected

Definition at line 378 of file Tau.h.

Referenced by embedIsolationPFChargedHadrCands(), and isolationPFChargedHadrCands().

bool pat::Tau::isolationPFChargedHadrCandsRefVectorFixed_
mutableprotected

Definition at line 381 of file Tau.h.

Referenced by isolationPFChargedHadrCands().

reco::PFCandidateRefVector pat::Tau::isolationPFChargedHadrCandsTransientRefVector_
mutableprotected

Definition at line 380 of file Tau.h.

Referenced by isolationPFChargedHadrCands().

std::vector<reco::PFCandidate> pat::Tau::isolationPFGammaCands_
protected

Definition at line 386 of file Tau.h.

Referenced by embedIsolationPFGammaCands(), and isolationPFGammaCands().

bool pat::Tau::isolationPFGammaCandsRefVectorFixed_
mutableprotected

Definition at line 389 of file Tau.h.

Referenced by isolationPFGammaCands().

reco::PFCandidateRefVector pat::Tau::isolationPFGammaCandsTransientRefVector_
mutableprotected

Definition at line 388 of file Tau.h.

Referenced by isolationPFGammaCands().

std::vector<reco::PFCandidate> pat::Tau::isolationPFNeutralHadrCands_
protected

Definition at line 382 of file Tau.h.

Referenced by embedIsolationPFNeutralHadrCands(), and isolationPFNeutrHadrCands().

bool pat::Tau::isolationPFNeutralHadrCandsRefVectorFixed_
mutableprotected

Definition at line 385 of file Tau.h.

Referenced by isolationPFNeutrHadrCands().

reco::PFCandidateRefVector pat::Tau::isolationPFNeutralHadrCandsTransientRefVector_
mutableprotected

Definition at line 384 of file Tau.h.

Referenced by isolationPFNeutrHadrCands().

std::vector<reco::Track> pat::Tau::isolationTracks_
protected

Definition at line 341 of file Tau.h.

Referenced by embedIsolationTracks(), and isolationTracks().

reco::TrackRefVector pat::Tau::isolationTracksTransientRefVector_
mutableprotected

Definition at line 342 of file Tau.h.

Referenced by isolationTracks().

bool pat::Tau::isolationTracksTransientRefVectorFixed_
mutableprotected

Definition at line 343 of file Tau.h.

Referenced by isolationTracks().

std::vector<pat::TauJetCorrFactors> pat::Tau::jec_
protected
std::vector<reco::PFCandidate> pat::Tau::leadPFCand_
protected

Definition at line 351 of file Tau.h.

Referenced by embedLeadPFCand(), and leadPFCand().

std::vector<reco::PFCandidate> pat::Tau::leadPFChargedHadrCand_
protected

Definition at line 353 of file Tau.h.

Referenced by embedLeadPFChargedHadrCand(), and leadPFChargedHadrCand().

std::vector<reco::PFCandidate> pat::Tau::leadPFNeutralCand_
protected

Definition at line 355 of file Tau.h.

Referenced by embedLeadPFNeutralCand(), and leadPFNeutralCand().

std::vector<reco::Track> pat::Tau::leadTrack_
protected

Definition at line 345 of file Tau.h.

Referenced by embedLeadTrack(), and leadTrack().

std::vector<pat::tau::TauPFSpecific> pat::Tau::pfSpecific_
protected
std::vector<reco::PFCandidate> pat::Tau::signalPFCands_
protected

Definition at line 358 of file Tau.h.

Referenced by embedSignalPFCands(), and signalPFCands().

bool pat::Tau::signalPFCandsRefVectorFixed_
mutableprotected

Definition at line 361 of file Tau.h.

Referenced by signalPFCands().

reco::PFCandidateRefVector pat::Tau::signalPFCandsTransientRefVector_
mutableprotected

Definition at line 360 of file Tau.h.

Referenced by signalPFCands().

std::vector<reco::PFCandidate> pat::Tau::signalPFChargedHadrCands_
protected

Definition at line 362 of file Tau.h.

Referenced by embedSignalPFChargedHadrCands(), and signalPFChargedHadrCands().

bool pat::Tau::signalPFChargedHadrCandsRefVectorFixed_
mutableprotected

Definition at line 365 of file Tau.h.

Referenced by signalPFChargedHadrCands().

reco::PFCandidateRefVector pat::Tau::signalPFChargedHadrCandsTransientRefVector_
mutableprotected

Definition at line 364 of file Tau.h.

Referenced by signalPFChargedHadrCands().

std::vector<reco::PFCandidate> pat::Tau::signalPFGammaCands_
protected

Definition at line 370 of file Tau.h.

Referenced by embedSignalPFGammaCands(), and signalPFGammaCands().

bool pat::Tau::signalPFGammaCandsRefVectorFixed_
mutableprotected

Definition at line 373 of file Tau.h.

Referenced by signalPFGammaCands().

reco::PFCandidateRefVector pat::Tau::signalPFGammaCandsTransientRefVector_
mutableprotected

Definition at line 372 of file Tau.h.

Referenced by signalPFGammaCands().

std::vector<reco::PFCandidate> pat::Tau::signalPFNeutralHadrCands_
protected

Definition at line 366 of file Tau.h.

Referenced by embedSignalPFNeutralHadrCands(), and signalPFNeutrHadrCands().

bool pat::Tau::signalPFNeutralHadrCandsRefVectorFixed_
mutableprotected

Definition at line 369 of file Tau.h.

Referenced by signalPFNeutrHadrCands().

reco::PFCandidateRefVector pat::Tau::signalPFNeutralHadrCandsTransientRefVector_
mutableprotected

Definition at line 368 of file Tau.h.

Referenced by signalPFNeutrHadrCands().

std::vector<reco::Track> pat::Tau::signalTracks_
protected

Definition at line 347 of file Tau.h.

Referenced by embedSignalTracks(), and signalTracks().

reco::TrackRefVector pat::Tau::signalTracksTransientRefVector_
mutableprotected

Definition at line 348 of file Tau.h.

Referenced by signalTracks().

bool pat::Tau::signalTracksTransientRefVectorFixed_
mutableprotected

Definition at line 349 of file Tau.h.

Referenced by signalTracks().

std::vector<IdPair> pat::Tau::tauIDs_
protected

Definition at line 395 of file Tau.h.

Referenced by isTauIDAvailable(), setTauIDs(), tauID(), and tauIDs().