Go to the documentation of this file.00001
00002
00013
00014
00015 #ifndef L1MUDT_EXT_LUT_H
00016 #define L1MUDT_EXT_LUT_H
00017
00018
00019
00020
00021
00022 #include <vector>
00023 #include <map>
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040 class L1MuDTExtLut {
00041
00042 public:
00043
00045 class LUT {
00046 public:
00047 typedef std::map<short, short, std::less<short> > LUTmap;
00048
00049 LUTmap low;
00050 LUTmap high;
00051 };
00052
00054 L1MuDTExtLut();
00055
00057 virtual ~L1MuDTExtLut();
00058
00060 void reset();
00061
00063 int load();
00064
00066 void print() const;
00067
00069 int getLow(int ext_ind, int address) const;
00070
00072 int getHigh(int ext_ind, int address) const;
00073
00074 private:
00075
00077 void setPrecision();
00078
00079 private:
00080
00081 std::vector<LUT> ext_lut;
00082
00083 unsigned short int nbit_phi;
00084 unsigned short int nbit_phib;
00085
00086 };
00087
00088 #endif