00001 #ifndef LMFLASERIREDNORMDAT_H 00002 #define LMFLASERIREDNORMDAT_H 00003 00004 #include <map> 00005 #include <stdexcept> 00006 00007 #include "OnlineDB/EcalCondDB/interface/IDataItem.h" 00008 #include "OnlineDB/EcalCondDB/interface/LMFRunTag.h" 00009 #include "OnlineDB/EcalCondDB/interface/LMFRunIOV.h" 00010 #include "OnlineDB/EcalCondDB/interface/EcalLogicID.h" 00011 00012 class LMFLaserIRedNormDat : public IDataItem { 00013 public: 00014 friend class EcalCondDBInterface; 00015 LMFLaserIRedNormDat(); 00016 ~LMFLaserIRedNormDat(); 00017 00018 // User data methods 00019 inline std::string getTable() { return "LMF_LASER_IRED_NORM_DAT"; } 00020 00021 inline void setAPDOverPNAMean(float mean) { m_apdOverPNAMean = mean; } 00022 inline float getAPDOverPNAMean() const { return m_apdOverPNAMean; } 00023 00024 inline void setAPDOverPNARMS(float RMS) { m_apdOverPNARMS = RMS; } 00025 inline float getAPDOverPNARMS() const { return m_apdOverPNARMS; } 00026 00027 inline void setAPDOverPNBMean(float mean) { m_apdOverPNBMean = mean; } 00028 inline float getAPDOverPNBMean() const { return m_apdOverPNBMean; } 00029 00030 inline void setAPDOverPNBRMS(float RMS) { m_apdOverPNBRMS = RMS; } 00031 inline float getAPDOverPNBRMS() const { return m_apdOverPNBRMS; } 00032 00033 inline void setAPDOverPNMean(float mean) { m_apdOverPNMean = mean; } 00034 inline float getAPDOverPNMean() const { return m_apdOverPNMean; } 00035 00036 inline void setAPDOverPNRMS(float RMS) { m_apdOverPNRMS = RMS; } 00037 inline float getAPDOverPNRMS() const { return m_apdOverPNRMS; } 00038 00039 00040 private: 00041 void prepareWrite() 00042 throw(std::runtime_error); 00043 00044 void writeDB(const EcalLogicID* ecid, const LMFLaserIRedNormDat* item, LMFRunIOV* iov) 00045 throw(std::runtime_error); 00046 00047 void fetchData(std::map< EcalLogicID, LMFLaserIRedNormDat >* fillVec, LMFRunIOV* iov) 00048 throw(std::runtime_error); 00049 00050 // User data 00051 float m_apdOverPNAMean; 00052 float m_apdOverPNARMS; 00053 float m_apdOverPNBMean; 00054 float m_apdOverPNBRMS; 00055 float m_apdOverPNMean; 00056 float m_apdOverPNRMS; 00057 00058 }; 00059 00060 #endif