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_*/
L1GctHtMissLut::operator=
L1GctHtMissLut operator=(const L1GctHtMissLut &lut)
Overload = operator.
Definition: L1GctHtMissLut.cc:79
L1GctHtMissLut::componentLsb
const double componentLsb() const
Definition: L1GctHtMissLut.h:55
L1GctHtMissLut::m_etScale
const L1CaloEtScale * m_etScale
Definition: L1GctHtMissLut.h:65
L1EGammaCrystalsEmulatorProducer_cfi.scale
scale
Definition: L1EGammaCrystalsEmulatorProducer_cfi.py:10
L1GctHtMissLut::getThresholdsGct
std::vector< unsigned > getThresholdsGct() const
Definition: L1GctHtMissLut.cc:70
L1GctHtMissLut::getThresholdsGeV
std::vector< double > getThresholdsGeV() const
Get thresholds.
Definition: L1GctHtMissLut.cc:68
hgcalVFEProducer_cfi.lsb
lsb
Definition: hgcalVFEProducer_cfi.py:80
L1GctHtMissLut::numberOfBits
numberOfBits
Definition: L1GctHtMissLut.h:24
L1GctLut.h
L1GctHtMissLut::~L1GctHtMissLut
~L1GctHtMissLut() override
Destructor.
Definition: L1GctHtMissLut.cc:25
L1GctHtMissLut::operator<<
friend std::ostream & operator<<(std::ostream &os, const L1GctHtMissLut &lut)
Overload << operator.
Definition: L1GctHtMissLut.cc:84
L1GctLut< 16, 12 >::m_setupOk
bool m_setupOk
Definition: L1GctLut.h:77
L1GctHtMissLut::etScale
const L1CaloEtScale * etScale() const
Return the Lut functions and parameters.
Definition: L1GctHtMissLut.h:54
L1GctHtMissLut::kHtMissAngleNBits
Definition: L1GctHtMissLut.h:24
L1GctHtMissLut::value
uint16_t value(const uint16_t lutAddress) const override
Definition: L1GctHtMissLut.cc:27
L1CaloEtScale
Definition: L1CaloEtScale.h:29
L1GctHtMissLut::L1GctHtMissLut
L1GctHtMissLut()
Default constructor.
Definition: L1GctHtMissLut.cc:17
operator<<
std::ostream & operator<<(std::ostream &os, const L1GctHtMissLut &lut)
Definition: L1GctHtMissLut.cc:84
L1GctHtMissLut::kHxOrHyMissComponentNBits
Definition: L1GctHtMissLut.h:24
L1GctHtMissLut::setExEyLsb
void setExEyLsb(const double lsb)
Definition: L1GctHtMissLut.h:51
L1GctLut
Base class for LookUp Tables.
Definition: L1GctLut.h:19
L1GctHtMissLut
LUT for conversion of Ht components x and y to magnitude and angle.
Definition: L1GctHtMissLut.h:20
L1GctHtMissLut::m_componentLsb
double m_componentLsb
Definition: L1GctHtMissLut.h:67
personalPlayback.fn
fn
Definition: personalPlayback.py:515
L1GctHtMissLut::kHtMissMagnitudeNBits
Definition: L1GctHtMissLut.h:24
L1GctHtMissLut::setEtScale
void setEtScale(const L1CaloEtScale *const fn)
Set the functions.
Definition: L1GctHtMissLut.h:45
L1GctHtMissLut::NAddress
static const int NAddress
Definition: L1GctHtMissLut.h:27
L1GctHtMissLut::NData
static const int NData
Definition: L1GctHtMissLut.h:27