CMS 3D CMS Logo

LMFLaserConfigDat.h

Go to the documentation of this file.
00001 #ifndef LMFLASERCFGDAT_H
00002 #define LMFLASERCFGDAT_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 LMFLaserConfigDat : public IDataItem {
00013  public:
00014   friend class EcalCondDBInterface;
00015   LMFLaserConfigDat();
00016   ~LMFLaserConfigDat();
00017 
00018   // User data methods
00019   inline std::string getTable() { return "LMF_LASER_CONFIG_DAT"; }
00020 
00021   inline void setWavelength(int x) { m_wl = x; }
00022   inline int getWavelength() const { return m_wl; }
00023   inline void setVFEGain(int x) { m_vfe_gain = x; }
00024   inline int getVFEGain() const { return m_vfe_gain; }
00025   inline void setPNGain(int x) { m_pn_gain = x; }
00026   inline int getPNGain() const { return m_pn_gain; }
00027 
00028   inline void setAttenuator(float x) { m_attenuator = x; }
00029   inline float getAttenuator() const { return m_attenuator; }
00030   inline void setPower(float x) { m_power = x; }
00031   inline float getPower() const { return m_power; }
00032   inline void setCurrent(float x) { m_current = x; }
00033   inline float getCurrent() const { return m_current; }
00034   inline void setDelay1(float x) { m_delay1 = x; }
00035   inline float getDelay1() const { return m_delay1; }
00036   inline void setDelay2(float x) { m_delay2 = x; }
00037   inline float getDelay2() const { return m_delay2; }
00038 
00039  private:
00040   void prepareWrite() 
00041     throw(std::runtime_error);
00042 
00043   void writeDB(const EcalLogicID* ecid, const LMFLaserConfigDat* item, LMFRunIOV* iov)
00044     throw(std::runtime_error);
00045 
00046 void writeArrayDB(const std::map< EcalLogicID, LMFLaserConfigDat >* data, LMFRunIOV* iov)
00047   throw(std::runtime_error);
00048 
00049 
00050   void fetchData(std::map< EcalLogicID, LMFLaserConfigDat >* fillVec, LMFRunIOV* iov)
00051      throw(std::runtime_error);
00052 
00053   // User data
00054   int m_wl;
00055   int m_vfe_gain;
00056   int m_pn_gain;
00057   float m_power;
00058   float m_attenuator;
00059   float m_current;
00060   float m_delay1;
00061   float m_delay2;
00062 
00063 };
00064 
00065 #endif

Generated on Tue Jun 9 17:40:45 2009 for CMSSW by  doxygen 1.5.4