Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-09-07 04:36:56

0001 #ifndef __l1microgmtcaloindexselectionlut_h
0002 #define __l1microgmtcaloindexselectionlut_h
0003 
0004 #include "MicroGMTLUT.h"
0005 #include "MicroGMTConfiguration.h"
0006 
0007 namespace l1t {
0008   class MicroGMTCaloIndexSelectionLUT : public MicroGMTLUT {
0009   public:
0010     MicroGMTCaloIndexSelectionLUT() {}
0011     explicit MicroGMTCaloIndexSelectionLUT(const std::string& fname, int type);
0012     explicit MicroGMTCaloIndexSelectionLUT(l1t::LUT* lut, int type);
0013     ~MicroGMTCaloIndexSelectionLUT() override {}
0014 
0015     // returns the index corresponding to the calo tower sum
0016     int lookup(int angle) const;
0017 
0018     int hashInput(int angle) const { return angle; };
0019     void unHashInput(int input, int& angle) const { angle = input; }
0020 
0021   private:
0022     int m_angleInWidth;
0023   };
0024 }  // namespace l1t
0025 
0026 #endif /* defined(__l1microgmtcaloindexselectionlut_h) */