Go to the documentation of this file.00001
00012 #ifndef DataFormats_JetReco_FFTJet_h
00013 #define DataFormats_JetReco_FFTJet_h
00014
00015 #include "DataFormats/Math/interface/LorentzVector.h"
00016 #include "DataFormats/JetReco/interface/PattRecoPeak.h"
00017
00018 namespace reco {
00019 template<class Real>
00020 class FFTJet
00021 {
00022 public:
00023 inline FFTJet()
00024 : ncells_(0), etSum_(0), centroidEta_(0), centroidPhi_(0),
00025 etaWidth_(0), phiWidth_(0), etaPhiCorr_(0), fuzziness_(0),
00026 convergenceD_(0), recoScale_(0), recoScaleRatio_(0),
00027 membershipFactor_(0), code_(0), status_(0)
00028 {
00029 }
00030
00031 inline FFTJet(const PattRecoPeak<Real>& peak,
00032 const math::XYZTLorentzVector& vec,
00033 double ncells, double etSum,
00034 double centroidEta, double centroidPhi,
00035 double etaWidth, double phiWidth,
00036 double etaPhiCorr, double fuzziness,
00037 double convergenceDistance, double recoScale,
00038 double recoScaleRatio, double membershipFactor,
00039 int code, int status)
00040 : peak_(peak),
00041 vec_(vec),
00042 ncells_(ncells),
00043 etSum_(etSum),
00044 centroidEta_(centroidEta),
00045 centroidPhi_(centroidPhi),
00046 etaWidth_(etaWidth),
00047 phiWidth_(phiWidth),
00048 etaPhiCorr_(etaPhiCorr),
00049 fuzziness_(fuzziness),
00050 convergenceD_(convergenceDistance),
00051 recoScale_(recoScale),
00052 recoScaleRatio_(recoScaleRatio),
00053 membershipFactor_(membershipFactor),
00054 code_(code),
00055 status_(status)
00056 {
00057 }
00058
00059 inline virtual ~FFTJet() {}
00060
00061
00062 inline const PattRecoPeak<Real>& f_precluster() const {return peak_;}
00063 inline const math::XYZTLorentzVector& f_vec() const {return vec_;}
00064 inline const math::XYZTLorentzVector& f_pileup() const {return pileup_;}
00065 inline Real f_ncells() const {return ncells_;}
00066 inline Real f_etSum() const {return etSum_;}
00067 inline Real f_centroidEta() const {return centroidEta_;}
00068 inline Real f_centroidPhi() const {return centroidPhi_;}
00069 inline Real f_etaWidth() const {return etaWidth_;}
00070 inline Real f_phiWidth() const {return phiWidth_;}
00071 inline Real f_etaPhiCorr() const {return etaPhiCorr_;}
00072 inline Real f_fuzziness() const {return fuzziness_;}
00073 inline Real f_convergenceDistance() const {return convergenceD_;}
00074 inline Real f_recoScale() const {return recoScale_;}
00075 inline Real f_recoScaleRatio() const {return recoScaleRatio_;}
00076 inline Real f_membershipFactor() const {return membershipFactor_;}
00077 inline int f_code() const {return code_;}
00078 inline int f_status() const {return status_;}
00079
00080
00081 inline void setPileup(const math::XYZTLorentzVector& p) {pileup_ = p;}
00082 inline void setFourVec(const math::XYZTLorentzVector& p) {vec_ = p;}
00083 inline void setCode(const int c) {code_ = c;}
00084 inline void setStatus(const int c) {status_ = c;}
00085 inline void setNCells(const double nc) {ncells_ = nc;}
00086
00087 private:
00088 PattRecoPeak<Real> peak_;
00089 math::XYZTLorentzVector vec_;
00090 math::XYZTLorentzVector pileup_;
00091 Real ncells_;
00092 Real etSum_;
00093 Real centroidEta_;
00094 Real centroidPhi_;
00095 Real etaWidth_;
00096 Real phiWidth_;
00097 Real etaPhiCorr_;
00098 Real fuzziness_;
00099 Real convergenceD_;
00100 Real recoScale_;
00101 Real recoScaleRatio_;
00102 Real membershipFactor_;
00103 int code_;
00104 int status_;
00105 };
00106 }
00107
00108 #endif