CModuleConfig.h 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. #pragma once
  2. #include "CppSQLite3.h"
  3. #include "dt.h"
  4. #include <string>
  5. #include <windows.h>
  6. #include <mutex>
  7. #include "CConfigBaseManage.h"
  8. #include "CDataBaseOperate.h"
  9. namespace ns_db
  10. {
  11. using namespace std;
  12. #ifdef MODULE_CONFIG_DLL
  13. #define DLL_MODULE_CONFIG_API __declspec(dllexport)
  14. #else
  15. #define DLL_MODULE_CONFIG_API
  16. #endif
  17. #define MODULECONFIG_DATABASE_NAME ROOT_PATH##"\\db\\ModuleConfig.db"
  18. #define BONDHEAD_CONFIG_TABLE_NAME "EutecticHead"
  19. #define WAFERHEAD_CONFIG_TABLE_NAME "WaferHead"
  20. #define WAFFLEHEAD_CONFIG_TABLE_NAME "WaffleHead"
  21. #define EJECTOR_CONFIG_TABLE_NAME "Ejector"
  22. #define WAFERTABLE_CONFIG_TABLE_NAME "WaferTable"
  23. #define MATERIAL_BOX_CONFIG_TABLE_NAME "MaterialBox"
  24. #define WAFER_CALIB_TABLE_CONFIG_TABLE_NAME "WaferCalibTable"
  25. #define WAFFLE_CALIB_TABLE_CONFIG_TABLE_NAME "WaffleCalibTable"
  26. #define BOND_TABLE_CONFIG_TABLE_NAME "BondTable"
  27. #define NOZZLE_TABLE_CONFIG_TABLE_NAME "NozzleTable"
  28. #define HARDWARE_SWICH_TABLE_NAME "HardwareSwich"
  29. #define ULTRAHEAD_TABLE_NAME "UltraHead"
  30. #define ULTRAHEAD_DIAGNOSIS_TABLE_NAME "UltraHead_Diagnosis"
  31. #define FLIP_CHIP_TABLE_NAME "FlipChip"
  32. #define TRANSPORTER_TABLE_NAME "Transporter"
  33. #define BONDHEAD_BUTTON_CONFIG_TABLE_NAME "EutecticHead_Button"
  34. #define WAFERHEAD_BUTTON_CONFIG_TABLE_NAME "WaferHead_Button"
  35. #define WAFFLEHEAD_BUTTON_CONFIG_TABLE_NAME "WaffleHead_Button"
  36. #define EJECTOR_BUTTON_CONFIG_TABLE_NAME "Ejector_Button"
  37. #define WAFERTABLE_BUTTON_CONFIG_TABLE_NAME "WaferTable_Button"
  38. #define MATERIAL_BUTTON_BOX_CONFIG_TABLE_NAME "MaterialBox_Button"
  39. #define WAFER_CALIB_BUTTON_TABLE_CONFIG_TABLE_NAME "WaferCalibTable_Button"
  40. #define WAFFLE_CALIB_BUTTON_TABLE_CONFIG_TABLE_NAME "WaffleCalibTable_Button"
  41. #define BOND_BUTTON_TABLE_CONFIG_TABLE_NAME "BondTable_Button"
  42. #define NOZZLE_BUTTON_TABLE_CONFIG_TABLE_NAME "NozzleTable_Button"
  43. #define ULTRAHEAD_BUTTON_TABLE_NAME "UltraHead_Button"
  44. #define FLIP_CHIP_BUTTON_TABLE_NAME "FilpChip_Button"
  45. #define TRANSPORTER_BUTTON_TABLE_NAME "Transporter_Button"
  46. const static std::vector<std::string> g_vetModuleConfigTableName = {
  47. BONDHEAD_CONFIG_TABLE_NAME,
  48. WAFERHEAD_CONFIG_TABLE_NAME,
  49. WAFFLEHEAD_CONFIG_TABLE_NAME,
  50. EJECTOR_CONFIG_TABLE_NAME,
  51. WAFERTABLE_CONFIG_TABLE_NAME,
  52. MATERIAL_BOX_CONFIG_TABLE_NAME,
  53. WAFER_CALIB_TABLE_CONFIG_TABLE_NAME,
  54. WAFFLE_CALIB_TABLE_CONFIG_TABLE_NAME,
  55. BOND_TABLE_CONFIG_TABLE_NAME,
  56. NOZZLE_TABLE_CONFIG_TABLE_NAME,
  57. HARDWARE_SWICH_TABLE_NAME,
  58. ULTRAHEAD_TABLE_NAME,
  59. FLIP_CHIP_TABLE_NAME,
  60. TRANSPORTER_TABLE_NAME,
  61. BONDHEAD_BUTTON_CONFIG_TABLE_NAME,
  62. WAFERHEAD_BUTTON_CONFIG_TABLE_NAME,
  63. WAFFLEHEAD_BUTTON_CONFIG_TABLE_NAME,
  64. EJECTOR_BUTTON_CONFIG_TABLE_NAME,
  65. WAFERTABLE_BUTTON_CONFIG_TABLE_NAME,
  66. MATERIAL_BUTTON_BOX_CONFIG_TABLE_NAME,
  67. WAFER_CALIB_BUTTON_TABLE_CONFIG_TABLE_NAME,
  68. WAFFLE_CALIB_BUTTON_TABLE_CONFIG_TABLE_NAME,
  69. BOND_BUTTON_TABLE_CONFIG_TABLE_NAME,
  70. NOZZLE_BUTTON_TABLE_CONFIG_TABLE_NAME,
  71. ULTRAHEAD_BUTTON_TABLE_NAME,
  72. ULTRAHEAD_DIAGNOSIS_TABLE_NAME
  73. };
  74. class DLL_MODULE_CONFIG_API CModuleConfig : public CDataBaseOperate
  75. {
  76. public:
  77. CModuleConfig();
  78. private:
  79. //CConfigBase* m_ConfigBaseDb;
  80. CConfigBaseManage* m_pConfigBaseManage;
  81. LONG SaveDB() override;
  82. LONG LoadDB() override;
  83. public:
  84. LONG GetConfigParam_HardwareSwich(string sKey, bool* flag);
  85. vector<CONFIG_BASE_STRUCT> GetConfigParam(string sTableName);
  86. LONG GetConfigParam(string sTableName, vector<MODULE_CONFIG_STRUCT>* vecconfig);
  87. LONG SetConfigParam(string sTableName,vector<CONFIG_BASE_STRUCT> vecconfig,bool bSendNotice = true);
  88. LONG SetConfigParam(string sTableName,vector<MODULE_CONFIG_STRUCT> vecconfig, bool bSendNotice = true);
  89. LONG SetConfigParam(string sTableName, MODULE_CONFIG_STRUCT stConfig, bool bSendNotice = true);
  90. };
  91. }