00001 #ifndef RUNFECONFIGDAT_H 00002 #define RUNFECONFIGDAT_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 #include "OnlineDB/EcalCondDB/interface/ODDelaysDat.h" 00011 00012 class RunFEConfigDat : public IDataItem { 00013 public: 00014 friend class EcalCondDBInterface; 00015 RunFEConfigDat(); 00016 ~RunFEConfigDat(); 00017 00018 // User data methods 00019 inline std::string getTable() { return "RUN_FECONFIG_DAT"; } 00020 00021 inline int getConfigId() const { return m_config; } 00022 inline void setConfigId(int x) { m_config = x; } 00023 00024 std::list<ODDelaysDat> getDelays(); 00025 00026 private: 00027 void prepareWrite() 00028 throw(std::runtime_error); 00029 00030 void writeDB(const EcalLogicID* ecid, const RunFEConfigDat* item, RunIOV* iov ) 00031 throw(std::runtime_error); 00032 00033 void fetchData(std::map< EcalLogicID, RunFEConfigDat >* fillMap, RunIOV* iov) 00034 throw(std::runtime_error); 00035 00036 // User data 00037 00038 int m_config; 00039 00040 }; 00041 00042 #endif