CMS 3D CMS Logo

L1GctHfEtSumsLut.h

Go to the documentation of this file.
00001 #ifndef L1GCTHFETSUMSLUT_H_
00002 #define L1GCTHFETSUMSLUT_H_
00003 
00004 #include "CondFormats/L1TObjects/interface/L1GctHfLutSetup.h"
00005 
00006 #include "L1Trigger/GlobalCaloTrigger/src/L1GctLut.h"
00007 
00008 #include <vector>
00009 
00021 class L1GctHfEtSumsLut : public L1GctLut<L1GctHfLutSetup::kHfEtSumBits,
00022                                          L1GctHfLutSetup::kHfOutputBits>
00023 
00024 {
00025 public:
00026 
00027   // Definitions.
00028   static const int NAddress, NData;
00029 
00031   L1GctHfEtSumsLut(const L1GctHfLutSetup::hfLutType& type, const L1GctHfLutSetup* const fn);
00033   L1GctHfEtSumsLut(const L1GctHfLutSetup::hfLutType& type);
00035   L1GctHfEtSumsLut();
00037   L1GctHfEtSumsLut(const L1GctHfEtSumsLut& lut);
00039   virtual ~L1GctHfEtSumsLut();
00040   
00042   L1GctHfEtSumsLut operator= (const L1GctHfEtSumsLut& lut);
00043 
00045   friend std::ostream& operator << (std::ostream& os, const L1GctHfEtSumsLut& lut);
00046 
00048   void setFunction(const L1GctHfLutSetup* const fn) { if (fn != 0) { m_lutFunction = fn; m_setupOk = true; } }
00049 
00051   L1GctHfLutSetup::hfLutType lutType() const { return m_lutType; }
00052 
00054   const L1GctHfLutSetup* lutFunction() const { return m_lutFunction; }
00055 
00056 protected:
00057   
00058 
00059   virtual uint16_t value (const uint16_t lutAddress) const;
00060 
00061 private:
00062 
00063   const L1GctHfLutSetup* m_lutFunction;
00064   L1GctHfLutSetup::hfLutType m_lutType;
00065   
00066 };
00067 
00068 
00069 std::ostream& operator << (std::ostream& os, const L1GctHfEtSumsLut& lut);
00070 
00071 #endif /*L1GCTHFETSUMSLUT_H_*/

Generated on Tue Jun 9 17:40:09 2009 for CMSSW by  doxygen 1.5.4