CMS 3D CMS Logo

L1GctHtMissLut.h
Go to the documentation of this file.
1 #ifndef L1GCTHTMISSLUT_H_
2 #define L1GCTHTMISSLUT_H_
3 
5 
6 #include <vector>
7 
18 class L1CaloEtScale;
19 
20 class L1GctHtMissLut : public L1GctLut<16, 12>
21 
22 {
23 public:
25 
26  // Definitions.
27  static const int NAddress, NData;
28 
30  L1GctHtMissLut(const L1CaloEtScale* const scale, const double lsb);
34  L1GctHtMissLut(const L1GctHtMissLut& lut);
36  ~L1GctHtMissLut() override;
37 
40 
42  friend std::ostream& operator<<(std::ostream& os, const L1GctHtMissLut& lut);
43 
45  void setEtScale(const L1CaloEtScale* const fn) {
46  m_etScale = fn;
47  if (fn != nullptr) {
48  m_setupOk = true;
49  }
50  }
51  void setExEyLsb(const double lsb) { m_componentLsb = lsb; }
52 
54  const L1CaloEtScale* etScale() const { return m_etScale; }
55  const double componentLsb() const { return m_componentLsb; }
56 
58  std::vector<double> getThresholdsGeV() const;
59  std::vector<unsigned> getThresholdsGct() const;
60 
61 protected:
62  uint16_t value(const uint16_t lutAddress) const override;
63 
64 private:
66 
68 };
69 
70 std::ostream& operator<<(std::ostream& os, const L1GctHtMissLut& lut);
71 
72 #endif /*L1GCTHTMISSLUT_H_*/
uint16_t value(const uint16_t lutAddress) const override
~L1GctHtMissLut() override
Destructor.
void setEtScale(const L1CaloEtScale *const fn)
Set the functions.
static constexpr int kHxOrHyMissComponentNBits
friend std::ostream & operator<<(std::ostream &os, const L1GctHtMissLut &lut)
Overload << operator.
static constexpr int kHtMissMagnitudeNBits
std::vector< double > getThresholdsGeV() const
Get thresholds.
LUT for conversion of Ht components x and y to magnitude and angle.
Base class for LookUp Tables.
Definition: L1GctLut.h:19
L1GctHtMissLut operator=(const L1GctHtMissLut &lut)
Overload = operator.
std::vector< unsigned > getThresholdsGct() const
double m_componentLsb
void setExEyLsb(const double lsb)
std::ostream & operator<<(std::ostream &os, const L1GctHtMissLut &lut)
const L1CaloEtScale * m_etScale
static constexpr int kHtMissAngleNBits
static const int NAddress
const L1CaloEtScale * etScale() const
Return the Lut functions and parameters.
static const int NData
L1GctHtMissLut()
Default constructor.
const double componentLsb() const