CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/CondFormats/L1TObjects/interface/L1MuDTEtaPatternLut.h

Go to the documentation of this file.
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