File indexing completed on 2024-04-06 12:22:56
0001 #ifndef ODSRPCONFIG_H
0002 #define ODSRPCONFIG_H
0003
0004 #include <map>
0005 #include <stdexcept>
0006 #include "OnlineDB/Oracle/interface/Oracle.h"
0007 #include "OnlineDB/EcalCondDB/interface/IODConfig.h"
0008
0009 #define USE_NORM 1
0010 #define USE_CHUN 2
0011 #define USE_BUFF 3
0012
0013
0014 #define BUFSIZE 200;
0015
0016 class ODSRPConfig : public IODConfig {
0017 public:
0018 friend class EcalCondDBInterface;
0019 ODSRPConfig();
0020 ~ODSRPConfig() override;
0021
0022
0023 inline std::string getTable() override { return "ECAL_SRP_CONFIGURATION"; }
0024
0025 inline void setId(int id) { m_ID = id; }
0026 inline int getId() const { return m_ID; }
0027
0028 inline void setDebugMode(int x) { m_debug = x; }
0029 inline int getDebugMode() const { return m_debug; }
0030
0031 inline void setDummyMode(int x) { m_dummy = x; }
0032 inline int getDummyMode() const { return m_dummy; }
0033
0034 inline void setPatternDirectory(std::string x) { m_patdir = x; }
0035 inline std::string getPatternDirectory() const { return m_patdir; }
0036
0037 inline void setAutomaticMasks(int x) { m_auto = x; }
0038 inline int getAutomaticMasks() const { return m_auto; }
0039
0040 inline void setAutomaticSrpSelect(int x) { m_auto_srp = x; }
0041 inline int getAutomaticSrpSelect() const { return m_auto_srp; }
0042
0043 inline void setSRP0BunchAdjustPosition(int x) { m_bnch = x; }
0044 inline int getSRP0BunchAdjustPosition() const { return m_bnch; }
0045
0046 inline void setConfigFile(std::string x) { m_file = x; }
0047 inline std::string getConfigFile() const { return m_file; }
0048
0049 inline void setSRPClob(unsigned char* x) { m_srp_clob = x; }
0050 inline unsigned char* getSRPClob() const { return m_srp_clob; }
0051 inline unsigned int getSRPClobSize() const { return m_size; }
0052
0053 void setParameters(const std::map<std::string, std::string>& my_keys_map);
0054
0055 private:
0056 void prepareWrite() noexcept(false) override;
0057 void writeDB() noexcept(false);
0058 void clear();
0059 void fetchData(ODSRPConfig* result) noexcept(false);
0060 int fetchID() noexcept(false);
0061
0062 int fetchNextId() noexcept(false);
0063
0064
0065 int m_ID;
0066 unsigned char* m_srp_clob;
0067 int m_debug;
0068 int m_dummy;
0069 std::string m_file;
0070 std::string m_patdir;
0071 int m_auto, m_auto_srp;
0072 int m_bnch;
0073 unsigned int m_size;
0074 };
0075
0076 #endif