File indexing completed on 2024-04-06 12:22:57
0001 #ifndef RUNH4TABLEPOSITIONDAT_H
0002 #define RUNH4TABLEPOSITIONDAT_H
0003
0004 #include <vector>
0005 #include <stdexcept>
0006
0007 #include "OnlineDB/EcalCondDB/interface/IDataItem.h"
0008 #include "OnlineDB/EcalCondDB/interface/RunIOV.h"
0009 #include "OnlineDB/EcalCondDB/interface/EcalLogicID.h"
0010
0011 class RunH4TablePositionDat : public IDataItem {
0012 public:
0013 friend class EcalCondDBInterface;
0014 RunH4TablePositionDat();
0015 ~RunH4TablePositionDat() override;
0016
0017
0018 inline std::string getTable() override { return "RUN_H4_TABLE_POSITION_DAT"; }
0019
0020 inline void setTableX(int num) { m_table_x = num; }
0021 inline int getTableX() const { return m_table_x; }
0022
0023 inline void setTableY(int num) { m_table_y = num; }
0024 inline int getTableY() const { return m_table_y; }
0025
0026 inline void setNumSpills(int num) { m_numSpills = num; }
0027 inline int getNumSpills() const { return m_numSpills; }
0028
0029 inline void setNumEvents(int num) { m_numEvents = num; }
0030 inline int getNumEvents() const { return m_numEvents; }
0031
0032 private:
0033 void prepareWrite() noexcept(false) override;
0034
0035 void writeDB(const EcalLogicID* ecid, const RunH4TablePositionDat* item, RunIOV* iov) noexcept(false);
0036
0037 void fetchData(std::map<EcalLogicID, RunH4TablePositionDat>* fillMap, RunIOV* iov) noexcept(false);
0038
0039
0040 int m_table_x;
0041 int m_table_y;
0042 int m_numSpills;
0043 int m_numEvents;
0044 };
0045
0046 #endif