CMS 3D CMS Logo

MicroGMTMatchQualLUT.h
Go to the documentation of this file.
1 #ifndef __l1microgmtmatchquallut_h
2 #define __l1microgmtmatchquallut_h
3 
4 #include "MicroGMTLUT.h"
6 
7 
10 
11 namespace l1t {
12  enum cancel_t {
14  };
15 
16 
18  public:
21  ~MicroGMTMatchQualLUT() override {};
22 
23  virtual int lookup(int etaFine, int dEta, int dPhi) const = 0;
24 
25  int getDeltaEtaWidth() const { return m_dEtaRedInWidth; }
26  int getDeltaPhiWidth() const { return m_dPhiRedInWidth; }
27  protected:
32 
33  double m_etaScale;
34  double m_phiScale;
35 
36  double m_maxDR;
37  double m_fEta;
38  double m_fPhi;
39 
41  };
42 
43  // LUT class for LUTs without eta fine bit, the eta fine bit in the lookup function is ignored
45  public:
47  explicit MicroGMTMatchQualSimpleLUT(const std::string&, const double maxDR, const double fEta, const double fPhi, cancel_t cancelType);
48  explicit MicroGMTMatchQualSimpleLUT(l1t::LUT* lut, cancel_t cancelType);
50 
51  int lookup(int etaFine, int dEta, int dPhi) const override;
52  int lookupPacked(int in) const override;
53  int hashInput(int dEta, int dPhi) const;
54  void unHashInput(int input, int& dEta, int& dPhi) const;
55  };
56 
57  // LUT class for LUTs with eta fine bit
59  public:
61  explicit MicroGMTMatchQualFineLUT(const std::string&, const double maxDR, const double fEta, const double fEtaCoarse, const double fPhi, cancel_t cancelType);
62  explicit MicroGMTMatchQualFineLUT(l1t::LUT* lut, cancel_t cancelType);
64 
65  int lookup(int etaFine, int dEta, int dPhi) const override;
66  int lookupPacked(int in) const override;
67  int hashInput(int etaFine, int dEta, int dPhi) const;
68  void unHashInput(int input, int& etaFine, int& dEta, int& dPhi) const;
69  private:
71  double m_fEtaCoarse;
72  };
73 }
74 #endif /* defined(__l1microgmtmatchquallut_h) */
virtual int lookupPacked(int input) const
Definition: MicroGMTLUT.cc:37
delete x;
Definition: CaloConfig.h:22
static std::string const input
Definition: EdmProvDump.cc:44
virtual int lookup(int etaFine, int dEta, int dPhi) const =0
Definition: LUT.h:29