00001 #ifndef MONMEMTTCONSISTENCYDAT_H 00002 #define MONMEMTTCONSISTENCYDAT_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 MonMemTTConsistencyDat : public IDataItem { 00013 public: 00014 friend class EcalCondDBInterface; 00015 MonMemTTConsistencyDat(); 00016 ~MonMemTTConsistencyDat(); 00017 00018 // User data methods 00019 inline std::string getTable() { return "MON_MEM_TT_CONSISTENCY_DAT"; } 00020 00021 inline void setProcessedEvents(int proc) { m_processedEvents = proc; } 00022 inline int getProcessedEvents() const { return m_processedEvents; } 00023 00024 inline void setProblematicEvents(int prob) { m_problematicEvents = prob; } 00025 inline int getProblematicEvents() const { return m_problematicEvents; } 00026 00027 inline void setProblemsID(int id) { m_problemsID = id; } 00028 inline int getProblemsID() const { return m_problemsID; } 00029 00030 inline void setProblemsSize(int size) { m_problemsSize = size; } 00031 inline int getProblemsSize() const { return m_problemsSize; } 00032 00033 inline void setProblemsLV1(int LV1) { m_problemsLV1 = LV1; } 00034 inline int getProblemsLV1() const { return m_problemsLV1; } 00035 00036 inline void setProblemsBunchX(int bunchX) { m_problemsBunchX = bunchX; } 00037 inline int getProblemsBunchX() const { return m_problemsBunchX; } 00038 00039 inline void setTaskStatus(bool status) { m_taskStatus = status; } 00040 inline bool getTaskStatus() const { return m_taskStatus; } 00041 00042 private: 00043 void prepareWrite() 00044 throw(std::runtime_error); 00045 00046 void writeDB(const EcalLogicID* ecid, const MonMemTTConsistencyDat* item, MonRunIOV* iov) 00047 throw(std::runtime_error); 00048 00049 void writeArrayDB(const std::map< EcalLogicID, MonMemTTConsistencyDat >* data, MonRunIOV* iov) 00050 throw(std::runtime_error); 00051 00052 00053 void fetchData(std::map< EcalLogicID, MonMemTTConsistencyDat >* fillVec, MonRunIOV* iov) 00054 throw(std::runtime_error); 00055 00056 // User data 00057 int m_processedEvents; 00058 int m_problematicEvents; 00059 int m_problemsID; 00060 int m_problemsSize; 00061 int m_problemsLV1; 00062 int m_problemsBunchX; 00063 bool m_taskStatus; 00064 00065 }; 00066 00067 #endif