00001 //------------------------------------------------- 00002 // 00013 // 00014 //-------------------------------------------------- 00015 #ifndef L1MUDT_ETAPATTERN_LUT_H 00016 #define L1MUDT_ETAPATTERN_LUT_H 00017 00018 //--------------- 00019 // C++ Headers -- 00020 //--------------- 00021 00022 #include <map> 00023 00024 //---------------------- 00025 // Base Class Headers -- 00026 //---------------------- 00027 00028 00029 //------------------------------------ 00030 // Collaborating Class Declarations -- 00031 //------------------------------------ 00032 00033 #include "CondFormats/L1TObjects/interface/L1MuDTEtaPattern.h" 00034 00035 // --------------------- 00036 // -- Class Interface -- 00037 // --------------------- 00038 00039 class L1MuDTEtaPatternLut { 00040 00041 public: 00042 00043 typedef std::map<short, L1MuDTEtaPattern, std::less<short> > LUT; 00044 typedef LUT::const_iterator ETFLut_iter; 00045 typedef LUT::iterator ETFLut_Iter; 00046 00048 L1MuDTEtaPatternLut(); 00049 00051 virtual ~L1MuDTEtaPatternLut(); 00052 00054 void reset(); 00055 00057 int load(); 00058 00060 void print() const; 00061 00063 L1MuDTEtaPattern getPattern(int id) const; 00064 00066 inline int size() const { return m_lut.size(); } 00067 00069 inline ETFLut_iter begin() const { return m_lut.begin(); } 00070 00072 inline ETFLut_iter end() const { return m_lut.end(); } 00073 00074 private: 00075 00076 LUT m_lut; 00077 00078 }; 00079 00080 #endif