File indexing completed on 2024-04-06 12:04:23
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #ifndef DataFormats_JetReco_FFTJet_h
0012 #define DataFormats_JetReco_FFTJet_h
0013
0014 #include "DataFormats/Math/interface/LorentzVector.h"
0015 #include "DataFormats/JetReco/interface/PattRecoPeak.h"
0016
0017 namespace reco {
0018 template <class Real>
0019 class FFTJet {
0020 public:
0021 inline FFTJet()
0022 : ncells_(0),
0023 etSum_(0),
0024 centroidEta_(0),
0025 centroidPhi_(0),
0026 etaWidth_(0),
0027 phiWidth_(0),
0028 etaPhiCorr_(0),
0029 fuzziness_(0),
0030 convergenceD_(0),
0031 recoScale_(0),
0032 recoScaleRatio_(0),
0033 membershipFactor_(0),
0034 code_(0),
0035 status_(0) {}
0036
0037 inline FFTJet(const PattRecoPeak<Real>& peak,
0038 const math::XYZTLorentzVector& vec,
0039 double ncells,
0040 double etSum,
0041 double centroidEta,
0042 double centroidPhi,
0043 double etaWidth,
0044 double phiWidth,
0045 double etaPhiCorr,
0046 double fuzziness,
0047 double convergenceDistance,
0048 double recoScale,
0049 double recoScaleRatio,
0050 double membershipFactor,
0051 int code,
0052 int status)
0053 : peak_(peak),
0054 vec_(vec),
0055 ncells_(ncells),
0056 etSum_(etSum),
0057 centroidEta_(centroidEta),
0058 centroidPhi_(centroidPhi),
0059 etaWidth_(etaWidth),
0060 phiWidth_(phiWidth),
0061 etaPhiCorr_(etaPhiCorr),
0062 fuzziness_(fuzziness),
0063 convergenceD_(convergenceDistance),
0064 recoScale_(recoScale),
0065 recoScaleRatio_(recoScaleRatio),
0066 membershipFactor_(membershipFactor),
0067 code_(code),
0068 status_(status) {}
0069
0070 inline virtual ~FFTJet() {}
0071
0072
0073 inline const PattRecoPeak<Real>& f_precluster() const { return peak_; }
0074 inline const math::XYZTLorentzVector& f_vec() const { return vec_; }
0075 inline const math::XYZTLorentzVector& f_pileup() const { return pileup_; }
0076 inline Real f_ncells() const { return ncells_; }
0077 inline Real f_etSum() const { return etSum_; }
0078 inline Real f_centroidEta() const { return centroidEta_; }
0079 inline Real f_centroidPhi() const { return centroidPhi_; }
0080 inline Real f_etaWidth() const { return etaWidth_; }
0081 inline Real f_phiWidth() const { return phiWidth_; }
0082 inline Real f_etaPhiCorr() const { return etaPhiCorr_; }
0083 inline Real f_fuzziness() const { return fuzziness_; }
0084 inline Real f_convergenceDistance() const { return convergenceD_; }
0085 inline Real f_recoScale() const { return recoScale_; }
0086 inline Real f_recoScaleRatio() const { return recoScaleRatio_; }
0087 inline Real f_membershipFactor() const { return membershipFactor_; }
0088 inline int f_code() const { return code_; }
0089 inline int f_status() const { return status_; }
0090
0091
0092 inline void setPileup(const math::XYZTLorentzVector& p) { pileup_ = p; }
0093 inline void setFourVec(const math::XYZTLorentzVector& p) { vec_ = p; }
0094 inline void setCode(const int c) { code_ = c; }
0095 inline void setStatus(const int c) { status_ = c; }
0096 inline void setNCells(const double nc) { ncells_ = nc; }
0097
0098 private:
0099 PattRecoPeak<Real> peak_;
0100 math::XYZTLorentzVector vec_;
0101 math::XYZTLorentzVector pileup_;
0102 Real ncells_;
0103 Real etSum_;
0104 Real centroidEta_;
0105 Real centroidPhi_;
0106 Real etaWidth_;
0107 Real phiWidth_;
0108 Real etaPhiCorr_;
0109 Real fuzziness_;
0110 Real convergenceD_;
0111 Real recoScale_;
0112 Real recoScaleRatio_;
0113 Real membershipFactor_;
0114 int code_;
0115 int status_;
0116 };
0117 }
0118
0119 #endif