TipMatrix.h 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. #pragma once
  2. #include "OneDimMatrix.h"
  3. #define FIRST_TIP_MATRIX_INDEX 1
  4. namespace ns_mat
  5. {
  6. //struct NozzleParam
  7. //{
  8. // XY_DOUBLE_STRUCT position{ 0,0 };
  9. // NozzleCalibParam calibParam;
  10. // double dNozzleHeigh = 0; //在固定位置进行标定
  11. // int nMaxAllowUseNum = 10000;
  12. // int nUsedNum = 0;
  13. //};
  14. class __declspec(dllexport) TipMatrix
  15. {
  16. public:
  17. static TipMatrix* GetInstance();
  18. LONG LoadMatrixParam();
  19. LONG GetNozzlePosition(int index, XY_DOUBLE_STRUCT& position);
  20. std::map<int, MatrixPointInfo> GetNozzleInfo();
  21. LONG GetBHRCalibTempID(int nozzleIndex, int& tempID);
  22. LONG SetBHRCalibTempID(int nozzleIndex, int tempID);
  23. LONG GetWHCTDNozzleTempID(int nozzleIndex, int& tempID);
  24. LONG SetWHCTDNozzleTempID(int nozzleIndex, int tempID);
  25. LONG GetBHRotCenter(int index, XY_DOUBLE_STRUCT& center);
  26. LONG SetNozzleRotCenter(int index, XY_DOUBLE_STRUCT center);
  27. LONG GetBHHighCameraToNozzle(int index, XY_DOUBLE_STRUCT& dis);
  28. LONG SetBHHighCameraToNozzle(int index, XY_DOUBLE_STRUCT CameraToNozzle);
  29. LONG GetBHLowCameraToNozzle(int index, XY_DOUBLE_STRUCT& dis);
  30. LONG SetBHLowCameraToNozzle(int index, XY_DOUBLE_STRUCT CameraToNozzle);
  31. LONG GetBHLowNozzleToCamera(int index, XY_DOUBLE_STRUCT& dis);
  32. LONG SetBHLowNozzleToCamera(int index, XY_DOUBLE_STRUCT CameraToNozzle);
  33. LONG GetWHCameraToNozzle(int index, XY_DOUBLE_STRUCT& cameraToNozzle);
  34. LONG SetWHCameraToNozzle(int index, XY_DOUBLE_STRUCT cameraToNozzle);
  35. LONG SetNozzleHigh(int index, double pos);
  36. LONG GetNozzleHigh(int index, double& pos);
  37. LONG SetNozzleMaxAllowUseNum(int nozzleIndex, int num);
  38. LONG GetNozzleMaxAllowUseNum(int nozzleIndex, int& num);
  39. LONG SetNozzleUsedNum(int nozzleIndex, int num);
  40. LONG GetNozzleUsedNum(int nozzleIndex, int& num);
  41. private:
  42. TipMatrix();
  43. ~TipMatrix();
  44. void DataChangNotice(string strDbName, string strTableName);
  45. void SetParam();
  46. private:
  47. OneDimMatrix* m_pPosMatrix = nullptr;
  48. //key 是吸嘴号
  49. std::map<int, NozzleParam> m_mapNozzleParam;
  50. CMachineCalibration* m_pCalibrationDB = nullptr;
  51. CProduct* m_pProduct = nullptr;
  52. CManageDB* m_pCManageDB = nullptr;
  53. bool m_bIsPrTest = false;
  54. int m_nMatrixID = 1;
  55. std::string m_sName = "TipMatrix";
  56. };
  57. }