CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_6/src/CondFormats/HcalObjects/interface/HcalDcsValue.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #ifndef HcalDcsValue_h
00003 #define HcalDcsValue_h
00004 
00005 #include <stdint.h>
00006 #include "DataFormats/HcalDetId/interface/HcalSubdetector.h"
00007 
00008 class HcalDcsValue {
00009 public:
00010 
00011   HcalDcsValue ();
00012   HcalDcsValue (uint32_t fid, int ls, float val, float upper,
00013                 float lower);
00014   HcalDcsValue (HcalDcsValue const& other);
00015 
00016   virtual ~HcalDcsValue ();
00017   
00018   uint32_t DcsId () const { return mId; }
00019   int LS () const { return mLS; }
00020   float getValue () const { return mValue;}
00021   float getUpperLimit () const { return mUpperLimit; }
00022   float getLowerLimit () const { return mLowerLimit; }
00023   bool isValueGood () const { 
00024     return ((mValue <= mUpperLimit) && (mValue >= mLowerLimit)); 
00025   }
00026 
00027   HcalOtherSubdetector getSubdetector() const;
00028 
00029   bool operator < (HcalDcsValue const& rhs) const {
00030     if (mId == rhs.mId) return (mLS < rhs.mLS);
00031     return (mId < rhs.mId);
00032   }
00033 
00034 private:
00035   uint32_t mId;
00036   int mLS;
00037   float mValue;
00038   float mUpperLimit;
00039   float mLowerLimit;
00040 };
00041 
00042 #endif