00001 #ifndef FECONFPEDDAT_H 00002 #define FECONFPEDDAT_H 00003 00004 #include <vector> 00005 #include <stdexcept> 00006 00007 #include "OnlineDB/EcalCondDB/interface/IDataItem.h" 00008 #include "OnlineDB/EcalCondDB/interface/EcalLogicID.h" 00009 #include "OnlineDB/EcalCondDB/interface/FEConfigPedInfo.h" 00010 00011 class FEConfigPedDat : public IDataItem { 00012 public: 00013 friend class EcalCondDBInterface; 00014 FEConfigPedDat(); 00015 ~FEConfigPedDat(); 00016 00017 // User data methods 00018 inline std::string getTable() { return "FE_CONFIG_PED_DAT"; } 00019 00020 inline void setId(int x) { m_ID = x; } 00021 inline int getId() const { return m_ID; } 00022 00023 inline void setPedMeanG1(float mean) { m_pedMeanG1 = mean; } 00024 inline float getPedMeanG1() const { return m_pedMeanG1; } 00025 00026 inline void setPedMeanG6(float mean) { m_pedMeanG6 = mean; } 00027 inline float getPedMeanG6() const { return m_pedMeanG6; } 00028 00029 inline void setPedMeanG12(float mean) { m_pedMeanG12 = mean; } 00030 inline float getPedMeanG12() const { return m_pedMeanG12; } 00031 00032 00033 private: 00034 void prepareWrite() 00035 throw(std::runtime_error); 00036 00037 void writeDB(const EcalLogicID* ecid, const FEConfigPedDat* item, FEConfigPedInfo* iconf ) 00038 throw(std::runtime_error); 00039 00040 void writeArrayDB(const std::map< EcalLogicID, FEConfigPedDat >* data, FEConfigPedInfo* iconf) 00041 throw(std::runtime_error); 00042 00043 void fetchData(std::map< EcalLogicID, FEConfigPedDat >* fillMap, FEConfigPedInfo* iconf) 00044 throw(std::runtime_error); 00045 00046 // User data 00047 float m_pedMeanG1; 00048 float m_pedMeanG6; 00049 float m_pedMeanG12; 00050 int m_ID; 00051 00052 }; 00053 00054 #endif 00055 00056