CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/CondFormats/L1TObjects/interface/L1MuCSCPtLut.h

Go to the documentation of this file.
00001 #ifndef L1TObjects_L1MuCSCPtLut_h
00002 #define L1TObjects_L1MuCSCPtLut_h
00003 
00004 #include <string>
00005 #include <string.h>
00006 
00007 class CSCTFConfigProducer;
00008 
00009 class L1MuCSCPtLut {
00010 private:
00011         unsigned short pt_lut[1<<21];
00012         friend class CSCTFConfigProducer;
00013 
00014 public:
00015 
00016         void readFromDBS(std::string& ptLUT);
00017 
00018         unsigned short pt(unsigned long addr) const throw() {
00019           if( addr<(1<<21) ) return pt_lut[(unsigned int)addr];
00020                 else return 0;
00021         }
00022 
00023         const unsigned short* lut(void) const throw() { return pt_lut; }
00024 
00025         L1MuCSCPtLut& operator=(const L1MuCSCPtLut& lut){ memcpy(pt_lut,lut.pt_lut,sizeof(pt_lut)); return *this; }
00026 
00027         L1MuCSCPtLut(void){ bzero(pt_lut,sizeof(pt_lut)); }
00028         L1MuCSCPtLut(const L1MuCSCPtLut& lut){ memcpy(pt_lut,lut.pt_lut,sizeof(pt_lut)); }
00029         ~L1MuCSCPtLut(void){}
00030 
00031 };
00032 
00033 #endif