CManageDB.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #pragma once
  2. #include "CppSQLite3.h"
  3. #include "dt.h"
  4. #include "CProduct.h"
  5. #include "CMachineSetup.h"
  6. #include "CHardware.h"
  7. #include "CModuleConfig.h"
  8. #include "CMachineCalibration.h"
  9. #include "CSecurity.h"
  10. #include "CStatisticCounters.h"
  11. #include "CCalibrationConfig.h"
  12. #include <string>
  13. #include <windows.h>
  14. #include <mutex>
  15. using namespace std;
  16. namespace ns_db
  17. {
  18. class __declspec(dllexport) CManageDB
  19. {
  20. public:
  21. static CManageDB* GetInstance();
  22. vector<CDataBaseOperate*> GetAllDataBase();
  23. LONG LoadAllDataBase();
  24. LONG SaveAllDataBase();
  25. string GetCurrentProductPath() { return m_strCurrentProgramPath; };
  26. CHardware* GetCHardware() { return m_pCHardware; };
  27. CModuleConfig* GetCModuleConfig() { return m_pCModuleConfig; };
  28. CStatisticCounters* GetCStatisticCounters() { return m_pCStatisticCounters; };
  29. CProduct* GetCProduct() { return m_pCProduct; };
  30. CMachineSetup* GetCMachineSetup() { return m_pCMachineSetup; };
  31. CMachineCalibration* GetCMachineCalibration() { return m_pCMachineCalibration; };
  32. CSecurity* GetCSecurity() { return m_pCSecurity; };
  33. CCalibrationConfig* GetCCalibrationConfig() { return m_pCCalibrationConfig; };
  34. private:
  35. static vector<CDataBaseOperate*> m_vecDataBase;
  36. CHardware* m_pCHardware;
  37. CSecurity* m_pCSecurity;
  38. CStatisticCounters* m_pCStatisticCounters;
  39. CProduct* m_pCProduct;
  40. CMachineSetup* m_pCMachineSetup;
  41. CModuleConfig* m_pCModuleConfig;
  42. CMachineCalibration* m_pCMachineCalibration;
  43. CCalibrationConfig* m_pCCalibrationConfig;
  44. string m_strCurrentProgramPath;
  45. static CManageDB* m_pInstance;
  46. static std::mutex m_Mutex;
  47. };
  48. }