00001 #ifndef RUNCOMMENTDAT_H 00002 #define RUNCOMMENTDAT_H 00003 00004 #include <vector> 00005 #include <stdexcept> 00006 00007 #include "OnlineDB/EcalCondDB/interface/IDataItem.h" 00008 #include "OnlineDB/EcalCondDB/interface/RunIOV.h" 00009 #include "OnlineDB/EcalCondDB/interface/EcalLogicID.h" 00010 00011 class RunCommentDat : public IDataItem { 00012 public: 00013 friend class EcalCondDBInterface; 00014 RunCommentDat(); 00015 ~RunCommentDat(); 00016 00017 // User data methods 00018 inline std::string getTable() { return "RUN_COMMENT_DAT"; } 00019 00020 inline void setSource(std::string x) { m_source = x; } 00021 inline std::string getSource() const { return m_source; } 00022 inline void setComment(std::string x) { m_comment = x; } 00023 inline std::string getComment() const { return m_comment; } 00024 inline void setDBTime(Tm x) {m_time=x;} 00025 inline Tm getDBTime() const {return m_time;} 00026 00027 private: 00028 void prepareWrite() 00029 throw(std::runtime_error); 00030 00031 void writeDB(const EcalLogicID* ecid, const RunCommentDat* item, RunIOV* iov ) 00032 throw(std::runtime_error); 00033 00034 void fetchData(std::map< EcalLogicID, RunCommentDat >* fillMap, RunIOV* iov) 00035 throw(std::runtime_error); 00036 00037 // User data 00038 std::string m_source ; 00039 std::string m_comment ; 00040 Tm m_time ; 00041 }; 00042 00043 #endif