00001 #ifndef FIELDDBUTIL_CONNECTIONDB_H 00002 #define FIELDDBUTIL_CONNECTIONDB_H 00003 00004 #include <string> 00005 #include <vector> 00006 00007 #ifndef BEAN 00008 #include "DatabaseSvc/IDatabaseSvc.h" 00009 #include "DatabaseSvc/DatabaseSvc.h" 00010 #endif 00011 00012 namespace FieldDBUtil { 00013 class ConnectionDB { 00014 public: 00015 00016 #ifndef BEAN 00018 ConnectionDB(); 00019 #else 00020 ConnectionDB() {} 00021 #endif 00022 00023 ~ConnectionDB() {} 00024 00025 enum eRet { 00026 RETOk = 0, 00027 RETBadCnfFile = 1, 00028 RETBadHost = 2, 00029 RETNoConnect = 3, 00030 RETWrongState = 4, 00031 RETBadValue = 5, 00032 RETMySQLError = 6, 00033 RETNoSchemaMatch = 7 00034 }; 00036 enum eLevel { 00037 LEVELProd = 1, 00038 LEVELDev = 2, 00039 LEVELTest = 4, 00040 LEVELSuperseded = 8 00041 }; 00042 00043 ConnectionDB::eRet getReadSC_MagnetInfo(std::vector<double>& current, int runNo); 00044 ConnectionDB::eRet getBeamEnergy( std::vector<double>& beamE, int runNo); 00045 00046 #ifndef BEAN 00047 private: 00048 IDatabaseSvc* m_dbsvc; 00049 #endif 00050 }; 00051 } 00052 00053 #endif