File indexing completed on 2024-04-06 12:04:45
0001 #ifndef DataFormats_METReco_PUSubMETData_h
0002 #define DataFormats_METReco_PUSubMETData_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #include "DataFormats/Candidate/interface/Candidate.h"
0016
0017 #include "DataFormats/METReco/interface/SigInputObj.h"
0018
0019 namespace reco {
0020
0021 class PUSubMETCandInfo {
0022
0023 public:
0024 PUSubMETCandInfo();
0025 ~PUSubMETCandInfo();
0026
0027 bool operator<(const reco::PUSubMETCandInfo&) const;
0028
0029
0030 const reco::Candidate::LorentzVector& p4() const { return p4_; };
0031 const float dZ() const { return dZ_; };
0032
0033 int type() const { return type_; };
0034 int charge() const { return charge_; };
0035
0036
0037 bool isWithinJet() const { return isWithinJet_; };
0038 float passesLooseJetId() const { return passesLooseJetId_; };
0039 float offsetEnCorr() const { return offsetEnCorr_; };
0040 float mva() const { return mva_; };
0041 float chargedEnFrac() const { return chargedEnFrac_; };
0042
0043 const metsig::SigInputObj& metSignObj() const { return pfMEtSignObj_; };
0044
0045
0046 void setP4(const reco::Candidate::LorentzVector p4) { p4_ = p4; };
0047 void setDZ(float dZ) { dZ_ = dZ; };
0048
0049 void setType(int type) { type_ = type; };
0050 void setCharge(int charge) { charge_ = charge; };
0051
0052
0053 void setIsWithinJet(bool isWJ) { isWithinJet_ = isWJ; };
0054 void setPassesLooseJetId(float jetId) { passesLooseJetId_ = jetId; };
0055 void setOffsetEnCorr(float offset) { offsetEnCorr_ = offset; };
0056 void setMvaVal(float mva) { mva_ = mva; };
0057 void setChargedEnFrac(float chEnF) { chargedEnFrac_ = chEnF; };
0058
0059 void setMEtSignObj(metsig::SigInputObj msig) { pfMEtSignObj_ = msig; };
0060
0061
0062 public:
0063 enum { kUndefined = 0, kHS, kChHS, kPU, kChPU, kNeutral };
0064
0065 private:
0066 reco::Candidate::LorentzVector p4_;
0067 float dZ_;
0068
0069 int type_;
0070 int charge_;
0071
0072
0073 bool isWithinJet_;
0074 float passesLooseJetId_;
0075 float offsetEnCorr_;
0076 float mva_;
0077 float chargedEnFrac_;
0078
0079 metsig::SigInputObj pfMEtSignObj_;
0080 };
0081
0082 }
0083
0084 #endif