CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/CondFormats/L1TObjects/interface/L1MuDTPtaLut.h

Go to the documentation of this file.
00001 //-------------------------------------------------
00002 //
00013 //
00014 //--------------------------------------------------
00015 #ifndef L1MUDT_PTA_LUT_H
00016 #define L1MUDT_PTA_LUT_H
00017 
00018 //---------------
00019 // C++ Headers --
00020 //---------------
00021 
00022 #include <vector>
00023 #include <map>
00024 
00025 //----------------------
00026 // Base Class Headers --
00027 //----------------------
00028 
00029 
00030 //------------------------------------
00031 // Collaborating Class Declarations --
00032 //------------------------------------
00033 
00034 
00035 //              ---------------------
00036 //              -- Class Interface --
00037 //              ---------------------
00038 
00039 
00040 class L1MuDTPtaLut {
00041 
00042   public:
00043 
00045     L1MuDTPtaLut();
00046 
00048     virtual ~L1MuDTPtaLut();
00049 
00051     void reset();
00052 
00054     int load();
00055 
00057     void print() const;
00058 
00060     int getPt(int pta_ind, int address) const;
00061 
00063     int getPtLutThreshold(int pta_ind) const;
00064 
00065   private:
00066 
00068     void setPrecision();
00069 
00070   private:
00071 
00072     typedef std::map<short, short, std::less<short> > LUT;
00073 
00074     std::vector<LUT> pta_lut;
00075     std::vector<int> pta_threshold;
00076 
00077     unsigned short int nbit_phi;
00078     
00079 };
00080 
00081 #endif