CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/OnlineDB/EcalCondDB/interface/MonLaserGreenDat.h

Go to the documentation of this file.
00001 #ifndef MONLASERGREENDAT_H
00002 #define MONLASERGREENDAT_H
00003 
00004 #include <vector>
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 MonLaserGreenDat : public IDataItem {
00013  public:
00014   friend class EcalCondDBInterface;
00015   MonLaserGreenDat();
00016   ~MonLaserGreenDat();
00017 
00018   // User data methods
00019   inline std::string getTable() { return "MON_LASER_GREEN_DAT"; }
00020 
00021   inline void setAPDMean(float mean) { m_apdMean = mean; }
00022   inline float getAPDMean() const { return m_apdMean; }
00023   
00024   inline void setAPDRMS(float rms) { m_apdRMS = rms; }
00025   inline float getAPDRMS() const { return m_apdRMS; }
00026 
00027   inline void setAPDOverPNMean(float mean) { m_apdOverPNMean = mean; }
00028   inline float getAPDOverPNMean() const { return m_apdOverPNMean; }
00029   
00030   inline void setAPDOverPNRMS(float rms) { m_apdOverPNRMS = rms; }
00031   inline float getAPDOverPNRMS() const { return m_apdOverPNRMS; }
00032   
00033   inline void setTaskStatus(bool status) { m_taskStatus = status; }
00034   inline bool getTaskStatus() const { return m_taskStatus; }
00035 
00036 
00037  private:
00038   void prepareWrite() 
00039     throw(std::runtime_error);
00040 
00041   void writeDB(const EcalLogicID* ecid, const MonLaserGreenDat* item, MonRunIOV* iov)
00042     throw(std::runtime_error);
00043 
00044   void writeArrayDB(const std::map< EcalLogicID, MonLaserGreenDat >* data, MonRunIOV* iov)
00045     throw(std::runtime_error);
00046 
00047 
00048   void fetchData(std::map< EcalLogicID, MonLaserGreenDat >* fillMap, MonRunIOV* iov)
00049      throw(std::runtime_error);
00050 
00051   // User data
00052   float m_apdMean;
00053   float m_apdRMS;
00054   float m_apdOverPNMean;
00055   float m_apdOverPNRMS;
00056   bool m_taskStatus;
00057   
00058 };
00059 
00060 #endif