CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/OnlineDB/EcalCondDB/interface/MonPedestalOffsetsDat.h

Go to the documentation of this file.
00001 #ifndef MONPEDESTALOFFSETSDAT_H
00002 #define MONPEDESTALOFFSETSDAT_H
00003 
00004 #include <map>
00005 #include <stdexcept>
00006 
00007 #include "OnlineDB/EcalCondDB/interface/IDataItem.h"
00008 #include "OnlineDB/EcalCondDB/interface/MonRunTag.h"
00009 #include "OnlineDB/EcalCondDB/interface/MonRunIOV.h"
00010 #include "OnlineDB/EcalCondDB/interface/EcalLogicID.h"
00011 
00012 class MonPedestalOffsetsDat : public IDataItem {
00013  public:
00014   friend class EcalCondDBInterface;
00015   MonPedestalOffsetsDat();
00016   ~MonPedestalOffsetsDat();
00017 
00018   // User data methods
00019   inline std::string getTable() { return "MON_PEDESTAL_OFFSETS_DAT"; }
00020 
00021   inline void setDACG1(int dac) { m_dacG1 = dac; }
00022   inline int getDACG1() const { return m_dacG1; }
00023 
00024   inline void setDACG6(int dac) { m_dacG6 = dac; }
00025   inline int getDACG6() const { return m_dacG6; }
00026 
00027   inline void setDACG12(int dac) { m_dacG12 = dac; }
00028   inline int getDACG12() const { return m_dacG12; }
00029 
00030   inline void setTaskStatus(bool status) { m_taskStatus = status; }
00031   inline bool getTaskStatus() const { return m_taskStatus; }
00032 
00033  private:
00034   void prepareWrite() 
00035     throw(std::runtime_error);
00036 
00037   void writeDB(const EcalLogicID* ecid, const MonPedestalOffsetsDat* item, MonRunIOV* iov )
00038     throw(std::runtime_error);
00039 
00040   void writeArrayDB(const std::map< EcalLogicID, MonPedestalOffsetsDat >* data, MonRunIOV* iov)
00041     throw(std::runtime_error);
00042 
00043 
00044   void fetchData(std::map< EcalLogicID, MonPedestalOffsetsDat >* fillMap, MonRunIOV* iov, std::string mappa=" cv.maps_to " )
00045      throw(std::runtime_error);
00046 
00047   // User data
00048   int m_dacG1;
00049   int m_dacG6;
00050   int m_dacG12;
00051   bool m_taskStatus;
00052 };
00053 
00054 #endif