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