File indexing completed on 2025-08-03 08:20:56
0001 #ifndef ONLMONDATABASE_ONLMONDB_H
0002 #define ONLMONDATABASE_ONLMONDB_H
0003
0004 #include <onlmon/OnlMonBase.h>
0005
0006 #include <ctime>
0007 #include <map>
0008 #include <string>
0009 #include <vector>
0010
0011 class OnlMonDBVar;
0012 class OnlMonDBodbc;
0013
0014 class OnlMonDB : public OnlMonBase
0015 {
0016 public:
0017 OnlMonDB(const std::string &thisname = "DUMMY");
0018 virtual ~OnlMonDB();
0019
0020 int registerVar(const std::string &varname);
0021 int SetVar(const std::string &varname, const float var, const float varerr, const float varqual);
0022 int SetVar(const std::string &varname, const float var[3]);
0023 int DBcommit();
0024 int DBcommitTest();
0025 int DBInit();
0026 void Print() const;
0027 int GetVar(const time_t begin, const time_t end, const std::string &varname, std::vector<time_t> ×tp, std::vector<int> &runnumber, std::vector<float> &var, std::vector<float> &varerr);
0028 void Reset();
0029
0030 protected:
0031 std::map<const std::string, OnlMonDBVar *> varmap;
0032 OnlMonDBodbc *db = nullptr;
0033 ;
0034 };
0035
0036 #endif