CMS 3D CMS Logo

L1GctJetEtCalibrationLut.h
Go to the documentation of this file.
1 #ifndef L1GCTJETETCALIBRATIONLUT_H_
2 #define L1GCTJETETCALIBRATIONLUT_H_
3 
4 #define JET_ET_CAL_LUT_ADD_BITS 11
5 #define JET_ET_CAL_LUT_DAT_BITS 6
6 
8 
10 class L1CaloEtScale;
11 
28 class L1GctJetEtCalibrationLut : public L1GctLut<JET_ET_CAL_LUT_ADD_BITS, JET_ET_CAL_LUT_DAT_BITS> {
29 public:
30  static const int NAddress;
31  static const int NData;
32  static const unsigned JET_ENERGY_BITWIDTH;
33 
35  ~L1GctJetEtCalibrationLut() override;
36 
37  // set components
38  void setFunction(const L1GctJetFinderParams* const lutfn);
39  void setOutputEtScale(const L1CaloEtScale* const scale);
40  void setEtaBin(const unsigned eta);
41 
42  // get components
43  const L1GctJetFinderParams* getFunction() const { return m_lutFunction; }
44  const L1CaloEtScale* getOutputEtScale() const { return m_outputEtScale; }
45  unsigned etaBin() const { return static_cast<unsigned>(m_etaBin); }
46 
48  friend std::ostream& operator<<(std::ostream& os, const L1GctJetEtCalibrationLut& lut);
49 
50 protected:
51  uint16_t value(const uint16_t lutAddress) const override;
52 
53 private:
56 
57  uint8_t m_etaBin;
58 };
59 
60 std::ostream& operator<<(std::ostream& os, const L1GctJetEtCalibrationLut& lut);
61 
62 #endif /*L1GCTJETETCALIBRATIONLUT_H_*/
L1GctJetEtCalibrationLut::NAddress
static const int NAddress
Definition: L1GctJetEtCalibrationLut.h:30
L1GctJetEtCalibrationLut::value
uint16_t value(const uint16_t lutAddress) const override
Definition: L1GctJetEtCalibrationLut.cc:29
L1GctJetEtCalibrationLut::m_etaBin
uint8_t m_etaBin
Definition: L1GctJetEtCalibrationLut.h:57
L1GctJetEtCalibrationLut::setFunction
void setFunction(const L1GctJetFinderParams *const lutfn)
Definition: L1GctJetEtCalibrationLut.cc:16
L1GctJetEtCalibrationLut::setOutputEtScale
void setOutputEtScale(const L1CaloEtScale *const scale)
Definition: L1GctJetEtCalibrationLut.cc:21
L1GctJetEtCalibrationLut::~L1GctJetEtCalibrationLut
~L1GctJetEtCalibrationLut() override
Definition: L1GctJetEtCalibrationLut.cc:14
L1GctJetEtCalibrationLut::JET_ENERGY_BITWIDTH
static const unsigned JET_ENERGY_BITWIDTH
Input bitwidth of jet energy; must be 10 or more.
Definition: L1GctJetEtCalibrationLut.h:32
L1GctLut.h
L1GctJetEtCalibrationLut
Jet Et calibration LUT.
Definition: L1GctJetEtCalibrationLut.h:28
PVValHelper::eta
Definition: PVValidationHelpers.h:69
L1GctJetEtCalibrationLut::operator<<
friend std::ostream & operator<<(std::ostream &os, const L1GctJetEtCalibrationLut &lut)
Overload << operator.
Definition: L1GctJetEtCalibrationLut.cc:46
L1GctJetFinderParams
Definition: L1GctJetFinderParams.h:10
Scenarios_cff.scale
scale
Definition: Scenarios_cff.py:2186
L1GctJetEtCalibrationLut::getOutputEtScale
const L1CaloEtScale * getOutputEtScale() const
Definition: L1GctJetEtCalibrationLut.h:44
operator<<
std::ostream & operator<<(std::ostream &os, const L1GctJetEtCalibrationLut &lut)
Definition: L1GctJetEtCalibrationLut.cc:46
L1CaloEtScale
Definition: L1CaloEtScale.h:29
L1GctJetEtCalibrationLut::getFunction
const L1GctJetFinderParams * getFunction() const
Definition: L1GctJetEtCalibrationLut.h:43
L1GctJetEtCalibrationLut::setEtaBin
void setEtaBin(const unsigned eta)
Definition: L1GctJetEtCalibrationLut.cc:23
L1GctJetEtCalibrationLut::m_lutFunction
const L1GctJetFinderParams * m_lutFunction
Definition: L1GctJetEtCalibrationLut.h:54
L1GctLut
Base class for LookUp Tables.
Definition: L1GctLut.h:19
L1GctJetEtCalibrationLut::NData
static const int NData
Definition: L1GctJetEtCalibrationLut.h:31
L1GctJetEtCalibrationLut::etaBin
unsigned etaBin() const
Definition: L1GctJetEtCalibrationLut.h:45
L1GctJetEtCalibrationLut::L1GctJetEtCalibrationLut
L1GctJetEtCalibrationLut()
Definition: L1GctJetEtCalibrationLut.cc:12
L1GctJetEtCalibrationLut::m_outputEtScale
const L1CaloEtScale * m_outputEtScale
Definition: L1GctJetEtCalibrationLut.h:55