File indexing completed on 2024-04-06 12:19:51
0001 #ifndef L1GCTHFBITCOUNTSLUT_H_
0002 #define L1GCTHFBITCOUNTSLUT_H_
0003
0004 #include "L1Trigger/GlobalCaloTrigger/interface/L1GctLut.h"
0005 #include "L1Trigger/GlobalCaloTrigger/interface/L1GctHfEtSumsLut.h"
0006
0007 #include <vector>
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 class L1GctHfBitCountsLut : public L1GctLut<5, 3>
0020
0021 {
0022 public:
0023
0024 static const int NAddress, NData;
0025
0026
0027 L1GctHfBitCountsLut(const L1GctHfEtSumsLut::hfLutType& type);
0028
0029 L1GctHfBitCountsLut();
0030
0031 L1GctHfBitCountsLut(const L1GctHfBitCountsLut& lut);
0032
0033 ~L1GctHfBitCountsLut() override;
0034
0035
0036 L1GctHfBitCountsLut operator=(const L1GctHfBitCountsLut& lut);
0037
0038
0039 friend std::ostream& operator<<(std::ostream& os, const L1GctHfBitCountsLut& lut);
0040
0041
0042 L1GctHfEtSumsLut::hfLutType lutType() const { return m_lutType; }
0043
0044
0045 std::vector<unsigned> getThresholdsGct() const;
0046
0047 protected:
0048 uint16_t value(const uint16_t lutAddress) const override;
0049
0050 private:
0051 L1GctHfEtSumsLut::hfLutType m_lutType;
0052 };
0053
0054 std::ostream& operator<<(std::ostream& os, const L1GctHfBitCountsLut& lut);
0055
0056 #endif