|
|
Go to the documentation of this file.
4 #ifndef DataFormats_PatCandidates_Lepton_h
5 #define DataFormats_PatCandidates_Lepton_h
28 template <
class LeptonType>
77 if (prunedKey ==
"TrackIso")
79 if (prunedKey ==
"EcalIso")
81 if (prunedKey ==
"HcalIso")
83 if (prunedKey ==
"PfAllParticleIso")
85 if (prunedKey ==
"PfChargedHadronIso")
87 if (prunedKey ==
"PfNeutralHadronIso")
89 if (prunedKey ==
"PfGammaIso")
91 if (prunedKey ==
"User1Iso")
93 if (prunedKey ==
"User2Iso")
95 if (prunedKey ==
"User3Iso")
97 if (prunedKey ==
"User4Iso")
99 if (prunedKey ==
"User5Iso")
101 if (prunedKey ==
"UserBaseIso")
103 if (prunedKey ==
"CaloIso")
105 if (prunedKey ==
"PfPUChargedHadronIso")
122 <<
"The key for which you're setting isolation does not correspond "
123 <<
"to an individual isolation but to the sum of more independent isolations "
124 <<
"(e.g. Calo = Ecal + Hcal), so you can't SET the value, just GET it.\n"
125 <<
"Please set up each component independly.\n";
184 if (it->first ==
key)
193 for (; it != ed; ++it) {
194 if (it->first ==
key) {
229 template <
class LeptonType>
239 template <
class LeptonType>
245 template <
class LeptonType>
251 template <
class LeptonType>
257 template <
class LeptonType>
float userIso(uint8_t index=0) const
void setGenLepton(const reco::GenParticleRef &gl, bool embed=false)
void ecalIsoDeposit(const IsoDeposit &dep)
std::vector< std::pair< IsolationKeys, pat::IsoDeposit > > IsoDepositPairs
Analysis-level lepton class.
void setIsolation(IsolationKeys key, float value)
float userIsolation(IsolationKeys key) const
const PFIsolation & miniPFIsolation() const
float puChargedHadronIso() const
math::XYZTLorentzVector LorentzVector
Lorentz vector.
const IsoDeposit * isoDeposit(IsolationKeys key) const
Returns the IsoDeposit associated with some key, or a null pointer if it is not available.
Templated PAT object container.
void setIsoDeposit(IsolationKeys key, const IsoDeposit &dep)
Sets the IsoDeposit associated with some key; if it is already existent, it is overwritten.
const reco::GenParticle * genLepton() const
IsoDepositPairs isoDeposits_
~Lepton() override
destructor
const IsoDeposit * userIsoDeposit(uint8_t index=0) const
float neutralHadronIso() const
void userIsoDeposit(const IsoDeposit &dep, uint8_t index=0)
float chargedHadronIso() const
const IsoDeposit * ecalIsoDeposit() const
void setMiniPFIsolation(PFIsolation const &iso)
void setGenParticleRef(const reco::GenParticleRef &ref, bool embed=false)
Set the generator level particle reference.
void setTrackIso(float trackIso)
Sets tracker isolation variable.
float userIsolation(const std::string &key) const
const IsoDeposit * hcalIsoDeposit() const
IsolationKeys
Enum defining isolation keys.
const reco::GenParticle * genParticle(size_t idx=0) const
void trackIsoDeposit(const IsoDeposit &dep)
std::vector< float > isolations_
unsigned int index
index type
math::XYZPoint Point
point in the space
Lepton< LeptonType > * clone() const override
float particleIso() const
const IsoDeposit * trackIsoDeposit() const
PFIsolation miniPFIsolation_
void hcalIsoDeposit(const IsoDeposit &dep)
void setUserIso(float value, uint8_t index=0)
Sets user isolation variable #index.
void setHcalIso(float caloIso)
Sets hcal isolation variable.
void setEcalIso(float caloIso)
Sets ecal isolation variable.
Lepton()
default constructor