Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:22:56

0001 #ifndef ODPEDESTALOFFSETSDAT_H
0002 #define ODPEDESTALOFFSETSDAT_H
0003 
0004 #include <vector>
0005 #include <stdexcept>
0006 
0007 #include "OnlineDB/EcalCondDB/interface/IDataItem.h"
0008 #include "OnlineDB/EcalCondDB/interface/EcalLogicID.h"
0009 #include "OnlineDB/EcalCondDB/interface/ODFEPedestalOffsetInfo.h"
0010 
0011 class ODPedestalOffsetsDat : public IODConfig {
0012 public:
0013   friend class EcalCondDBInterface;
0014   ODPedestalOffsetsDat();
0015   ~ODPedestalOffsetsDat() override;
0016 
0017   // User data methods
0018   inline std::string getTable() override { return "PEDESTAL_OFFSETS_DAT"; }
0019 
0020   inline void setId(int dac) { m_ID = dac; }
0021   inline int getId() const { return m_ID; }
0022 
0023   inline void setSMId(int dac) { m_sm = dac; }
0024   inline int getSMId() const { return m_sm; }
0025 
0026   inline void setFedId(int dac) { m_fed = dac; }
0027   inline int getFedId() const { return m_fed; }
0028 
0029   inline void setTTId(int dac) { m_tt = dac; }
0030   inline int getTTId() const { return m_tt; }
0031 
0032   inline void setCrystalId(int dac) { m_xt = dac; }
0033   inline int getCrystalId() const { return m_xt; }
0034 
0035   inline void setLow(int dac) { m_low = dac; }
0036   inline int getLow() const { return m_low; }
0037 
0038   inline void setMid(int dac) { m_mid = dac; }
0039   inline int getMid() const { return m_mid; }
0040 
0041   inline void setHigh(int dac) { m_high = dac; }
0042   inline int getHigh() const { return m_high; }
0043 
0044 private:
0045   void prepareWrite() noexcept(false) override;
0046 
0047   void writeDB(const ODPedestalOffsetsDat* item, ODFEPedestalOffsetInfo* iov) noexcept(false);
0048 
0049   void writeArrayDB(const std::vector<ODPedestalOffsetsDat>& data, ODFEPedestalOffsetInfo* iov) noexcept(false);
0050 
0051   void fetchData(std::vector<ODPedestalOffsetsDat>* fillMap, ODFEPedestalOffsetInfo* iov) noexcept(false);
0052 
0053   // User data
0054   int m_sm;
0055   int m_fed;
0056   int m_tt;
0057   int m_xt;
0058   int m_low;
0059   int m_mid;
0060   int m_high;
0061   int m_ID;
0062 };
0063 
0064 #endif