4 #ifndef DataFormats_PatCandidates_Muon_h 5 #define DataFormats_PatCandidates_Muon_h 147 if (pfCandidateRef_.isNonnull())
149 if (refToOrig_.isNonnull())
190 float caloIso()
const {
return ecalIso() + hcalIso(); }
202 puppiChargedHadronIso_ = chargedhadrons;
203 puppiNeutralHadronIso_ = neutralhadrons;
208 puppiNoLeptonsChargedHadronIso_ = chargedhadrons;
209 puppiNoLeptonsNeutralHadronIso_ = neutralhadrons;
210 puppiNoLeptonsPhotonIso_ =
photons;
237 typedef enum IPTYPE { PV2D = 0, PV3D = 1, BS2D = 2, BS3D = 3, PVDZ = 4, IpTypeSize = 5 }
IpType;
238 void initImpactParameters(
void);
240 double edB(
IPTYPE type)
const;
250 cachedIP_ |= (1 <<
int(type));
254 unsigned int numberOfValidHits()
const;
256 numberOfValidHits_ = numberOfValidHits;
257 cachedNumberOfValidHits_ =
true;
261 double normChi2()
const;
263 normChi2_ = normChi2;
264 cachedNormChi2_ =
true;
313 int simBX()
const {
return simBX_; }
317 float simPt()
const {
return simPt_; }
322 void initSimInfo(
void);
345 bool triggered(
const char* pathName)
const {
return triggerObjectMatchByPath(pathName,
true,
true) !=
nullptr; }
400 float ip_[IpTypeSize];
401 float eip_[IpTypeSize];
float inverseBetaErr() const
embedCombinedMuon
whether to embed in AOD externally stored standalone muon track
reco::PFCandidateRef pfCandidateRef_
void setLowPtMvaValue(float lowptmva)
bool embeddedTCMETMuonCorrs_
muon MET corrections for tcMET
embedPFCandidate
embed in AOD externally stored the electron's pflow preshower clusters
edm::RefVector< MuonCollection > MuonRefVector
reco::MuonSimType simType_
MC matching information.
void setMvaValue(float mva)
uint8_t cachedIP_
globalTrack->numberOfValidHits()
reco::TrackRef tpfmsMuon() const
bool isMediumMuon(const reco::Muon &, bool run2016_hip_mitigation=false)
unsigned int numberOfValidHits_
has the numberOfValidHits been cached?
enum start value shifted to 81 so as to avoid clashes with PDG codes
float puppiNoLeptonsPhotonIso() const
void setSimFlavour(int f)
embedDytMuon
embed in AOD externally stored TeV-refit TPFMS muon track
bool embeddedTrack_
track of inner track detector
double edB() const
the version without arguments returns PD2D, but with an absolute value (for backwards compatibility) ...
float inverseBeta() const
(time is constraint to the bunch crossing time)
std::vector< reco::MuonMETCorrectionData > tcMETMuonCorrs_
void setIsolationPUPPINoLeptons(float chargedhadrons, float neutralhadrons, float photons)
sets PUPPINoLeptons isolations
bool cachedNumberOfValidHits_
globalTrack->chi2() / globalTrack->ndof()
int simHeaviestMotherFlavour() const
bool embeddedStandAloneMuon_
track of muon system
float puppiNeutralHadronIso_
edm::Ref< MuonCollection > MuonRef
std::vector< reco::Track > tunePMuonBestTrack_
bool isGood(const std::string &name) const
void setSimPhi(float phi)
void setSimProdRho(float rho)
void setSimHeaviestMotherFlavour(int id)
void setPFCandidateRef(const reco::PFCandidateRef &ref)
add a reference to the source IsolatedPFCandidate
void setSimType(reco::MuonSimType type)
const pat::TriggerObjectStandAlone * hltObject(const size_t idx=0) const
void setIsolationPUPPI(float chargedhadrons, float neutralhadrons, float photons)
sets PUPPI isolations
bool isLooseMuon(const reco::Muon &)
float inverseBeta_
Inverse beta.
virtual reco::TrackRef track() const
reference to a Track
embedPickyMuon
embed in AOD externally stored standalone muon track
bool triggered(const char *pathName) const
std::vector< reco::Track > pickyMuon_
int simHeaviestMotherFlavour_
float puppiNoLeptonsChargedHadronIso_
PUPPINoLeptons isolations.
float puppiNoLeptonsNeutralHadronIso() const
reco::ExtendedMuonSimType simExtType() const
float jetPtRatio() const
near-by jet information
std::vector< reco::MuonMETCorrectionData > caloMETMuonCorrs_
reco::PFCandidateCollection pfCandidate_
reco::TrackRef innerTrack() const override
reference to Track reconstructed in the tracker only (reimplemented from reco::Muon) ...
std::ostream & operator<<(std::ostream &, BeamSpot beam)
embedTrack
embed in AOD externally stored particle flow candidate
void setDB(double dB, double edB, IPTYPE type=PV2D)
std::vector< reco::Track > dytMuon_
reco::TrackRef outerTrack() const override
reference to Track reconstructed in the muon detector only (reimplemented from reco::Muon) ...
double normChi2_
has the normalized chi2 been cached?
enum pat::Muon::IPTYPE IpType
ArbitrationType
define arbitration schemes
bool embeddedTunePMuonBestTrack_
best muon track (muon only)
float puppiNoLeptonsPhotonIso_
Muon * clone() const override
required reimplementation of the Candidate's clone method
std::ostream & operator<<(std::ostream &out, const strbitset::index_type &r)
float softMvaValue() const
Soft Muon MVA.
float puppiNeutralHadronIso() const
reco::MuonMETCorrectionData tcMETMuonCorrs() const
muon MET corrections for tcMET; returns the muon correction struct if embedded during pat tuple produ...
void setJetPtRel(float jetPtRel)
Abs< T >::type abs(const T &t)
void setSoftMvaValue(float softmva)
float segmentCompatibility(const reco::Muon &muon, reco::Muon::ArbitrationType arbitrationType=reco::Muon::SegmentAndTrackArbitration)
float puppiChargedHadronIso() const
returns PUPPI isolations
float puppiPhotonIso() const
float jetPtRatio_
near-by jet information
bool isSoftMuon(const reco::Muon &, const reco::Vertex &, bool run2016_hip_mitigation=false)
bool embeddedPFCandidate_
true if the IsolatedPFCandidate is embedded
bool embeddedCaloMETMuonCorrs_
muon MET corrections for caloMET
float pfEcalEnergy() const
float puppiNoLeptonsChargedHadronIso() const
returns PUPPINoLeptons isolations
float puppiNoLeptonsNeutralHadronIso_
std::vector< reco::PFCandidate > PFCandidateCollection
collection of PFCandidates
const reco::Track * bestTrack() const override
Track selected to be the best measurement of the muon parameters (including PFlow global information)...
bool isHighPtMuon(const reco::Muon &, const reco::Vertex &)
embedTpfmsMuon
embed in AOD externally stored TeV-refit picky muon track
bool embeddedCombinedMuon_
track of combined fit
void setPfEcalEnergy(float pfEcalEnergy)
float lowptMvaValue() const
void setJetPtRatio(float jetPtRatio)
reco::TrackRef globalTrack() const override
reference to Track reconstructed in both tracked and muon detector (reimplemented from reco::Muon) ...
void setSimMotherPdgId(int id)
void setExtSimType(reco::ExtendedMuonSimType type)
double dB() const
the version without arguments returns PD2D, but with an absolute value (for backwards compatibility) ...
std::vector< reco::Track > muonBestTrack_
int simMotherPdgId() const
std::vector< Muon > MuonCollection
std::vector< reco::Track > track_
void setSimProdZ(float z)
std::vector< reco::Track > combinedMuon_
void setNormChi2(double normChi2)
std::vector< reco::Track > standAloneMuon_
embedStandAloneMuon
whether to embed in AOD externally stored gsf track
reco::MuonSimType simType() const
MC matching information.
embedTunePMuonBestTrack
embed in AOD externally stored muon best track from global pflow
size_t numberOfSourceCandidatePtrs() const override
get the number of non-null PF candidates
reco::TrackRef pickyMuon() const
Deprecated accessors to call the corresponding above two functions; no dytMuon since this naming is d...
float simMatchQuality() const
bool isTightMuon(const reco::Muon &, const reco::Vertex &)
float puppiChargedHadronIso_
PUPPI isolations.
float mvaValue() const
Muon MVA.
void setNumberOfValidHits(unsigned int numberOfValidHits)
void setSimEta(float eta)
Analysis-level muon class.
bool embeddedMuonBestTrack_
best muon track (global pflow)
const pat::TriggerObjectStandAlone * l1Object(const size_t idx=0) const
Trigger information.
Analysis-level trigger object class (stand-alone)
std::vector< reco::Track > tpfmsMuon_
void setSimMatchQuality(float quality)
reco::ExtendedMuonSimType simExtType_
void setSimTpEvent(int tpEvent)
reco::MuonMETCorrectionData caloMETMuonCorrs() const
muon MET corrections for caloMET; returns the muon correction struct if embedded during pat tuple pro...