CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_3/src/OnlineDB/EcalCondDB/interface/MonLaserStatusDat.h

Go to the documentation of this file.
00001 #ifndef MONLASERSTATUSDAT_H
00002 #define MONLASERSTATUSDAT_H
00003 
00004 #include <vector>
00005 #include <stdexcept>
00006 
00007 #include "OnlineDB/EcalCondDB/interface/IDataItem.h"
00008 #include "OnlineDB/EcalCondDB/interface/MonRunIOV.h"
00009 #include "OnlineDB/EcalCondDB/interface/EcalLogicID.h"
00010 
00011 class MonLaserStatusDat : public IDataItem {
00012  public:
00013   friend class EcalCondDBInterface;
00014   MonLaserStatusDat();
00015   ~MonLaserStatusDat();
00016 
00017   // User data methods
00018   inline std::string getTable() { return "MON_LASER_STATUS_DAT"; }
00019   inline void setLaserPower(float p) { m_laserPower = p; }
00020   inline float getLaserPower() const { return m_laserPower; }
00021   
00022   inline void setLaserFilter(float p) { m_laserFilter = p; }
00023   inline float getLaserFilter() const { return m_laserFilter; }
00024 
00025   inline void setLaserWavelength(float p) { m_laserWavelength = p; }
00026   inline float getLaserWavelength() const { return m_laserWavelength; }
00027 
00028   inline void setLaserFanout(float p) { m_laserFanout = p; }
00029   inline float getLaserFanout() const { return m_laserFanout; }
00030 
00031  private:
00032   void prepareWrite() 
00033     throw(std::runtime_error);
00034 
00035   void writeDB(const EcalLogicID* ecid, const MonLaserStatusDat* item, MonRunIOV* iov )
00036     throw(std::runtime_error);
00037 
00038   void writeArrayDB(const std::map< EcalLogicID, MonLaserStatusDat >* data, MonRunIOV* iov)
00039     throw(std::runtime_error);
00040 
00041   void fetchData(std::map< EcalLogicID, MonLaserStatusDat >* fillMap, MonRunIOV* iov)
00042      throw(std::runtime_error);
00043 
00044   // User data
00045   float m_laserPower;
00046   float m_laserFilter;
00047   float m_laserWavelength;
00048   float m_laserFanout;
00049 };
00050 
00051 #endif