1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
/** \class reco::FFTJet
*
* \short Storage class for jets reconstructed by FFTJet package
*
* Collects jet properties unique to FFTJet algorithms
*
* \author Igor Volobouev, TTU
*
************************************************************/
#ifndef DataFormats_JetReco_FFTJet_h
#define DataFormats_JetReco_FFTJet_h
#include "DataFormats/Math/interface/LorentzVector.h"
#include "DataFormats/JetReco/interface/PattRecoPeak.h"
namespace reco {
template <class Real>
class FFTJet {
public:
inline FFTJet()
: ncells_(0),
etSum_(0),
centroidEta_(0),
centroidPhi_(0),
etaWidth_(0),
phiWidth_(0),
etaPhiCorr_(0),
fuzziness_(0),
convergenceD_(0),
recoScale_(0),
recoScaleRatio_(0),
membershipFactor_(0),
code_(0),
status_(0) {}
inline FFTJet(const PattRecoPeak<Real>& peak,
const math::XYZTLorentzVector& vec,
double ncells,
double etSum,
double centroidEta,
double centroidPhi,
double etaWidth,
double phiWidth,
double etaPhiCorr,
double fuzziness,
double convergenceDistance,
double recoScale,
double recoScaleRatio,
double membershipFactor,
int code,
int status)
: peak_(peak),
vec_(vec),
ncells_(ncells),
etSum_(etSum),
centroidEta_(centroidEta),
centroidPhi_(centroidPhi),
etaWidth_(etaWidth),
phiWidth_(phiWidth),
etaPhiCorr_(etaPhiCorr),
fuzziness_(fuzziness),
convergenceD_(convergenceDistance),
recoScale_(recoScale),
recoScaleRatio_(recoScaleRatio),
membershipFactor_(membershipFactor),
code_(code),
status_(status) {}
inline virtual ~FFTJet() {}
// inspectors
inline const PattRecoPeak<Real>& f_precluster() const { return peak_; }
inline const math::XYZTLorentzVector& f_vec() const { return vec_; }
inline const math::XYZTLorentzVector& f_pileup() const { return pileup_; }
inline Real f_ncells() const { return ncells_; }
inline Real f_etSum() const { return etSum_; }
inline Real f_centroidEta() const { return centroidEta_; }
inline Real f_centroidPhi() const { return centroidPhi_; }
inline Real f_etaWidth() const { return etaWidth_; }
inline Real f_phiWidth() const { return phiWidth_; }
inline Real f_etaPhiCorr() const { return etaPhiCorr_; }
inline Real f_fuzziness() const { return fuzziness_; }
inline Real f_convergenceDistance() const { return convergenceD_; }
inline Real f_recoScale() const { return recoScale_; }
inline Real f_recoScaleRatio() const { return recoScaleRatio_; }
inline Real f_membershipFactor() const { return membershipFactor_; }
inline int f_code() const { return code_; }
inline int f_status() const { return status_; }
// modifiers
inline void setPileup(const math::XYZTLorentzVector& p) { pileup_ = p; }
inline void setFourVec(const math::XYZTLorentzVector& p) { vec_ = p; }
inline void setCode(const int c) { code_ = c; }
inline void setStatus(const int c) { status_ = c; }
inline void setNCells(const double nc) { ncells_ = nc; }
private:
PattRecoPeak<Real> peak_;
math::XYZTLorentzVector vec_;
math::XYZTLorentzVector pileup_;
Real ncells_;
Real etSum_;
Real centroidEta_;
Real centroidPhi_;
Real etaWidth_;
Real phiWidth_;
Real etaPhiCorr_;
Real fuzziness_;
Real convergenceD_;
Real recoScale_;
Real recoScaleRatio_;
Real membershipFactor_;
int code_;
int status_;
};
} // namespace reco
#endif
|