TipMatrix.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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. };
  11. class TipMatrix
  12. {
  13. public:
  14. static TipMatrix* GetInstance();
  15. LONG LoadMatrixParam();
  16. LONG GetNozzlePosition(int index, XY_DOUBLE_STRUCT& position);
  17. LONG GetBHRCalibTempID(int nozzleIndex, int& tempID);
  18. LONG SetBHRCalibTempID(int nozzleIndex, int tempID);
  19. LONG GetWHCTDNozzleTempID(int nozzleIndex, int& tempID);
  20. LONG SetWHCTDNozzleTempID(int nozzleIndex, int tempID);
  21. LONG GetBHRotCenter(int index, XY_DOUBLE_STRUCT& center);
  22. LONG SetNozzleRotCenter(int index, XY_DOUBLE_STRUCT center);
  23. LONG GetBHHighCameraToNozzle(int index, XY_DOUBLE_STRUCT& dis);
  24. LONG SetBHHighCameraToNozzle(int index, XY_DOUBLE_STRUCT CameraToNozzle);
  25. LONG GetBHLowCameraToNozzle(int index, XY_DOUBLE_STRUCT& dis);
  26. LONG SetBHLowCameraToNozzle(int index, XY_DOUBLE_STRUCT CameraToNozzle);
  27. LONG GetWHCameraToNozzle(int index, XY_DOUBLE_STRUCT& cameraToNozzle);
  28. LONG SetWHCameraToNozzle(int index, XY_DOUBLE_STRUCT cameraToNozzle);
  29. private:
  30. TipMatrix();
  31. ~TipMatrix();
  32. void DataChangNotice(string strDbName, string strTableName);
  33. void SetParam();
  34. private:
  35. OneDimMatrix* m_pPosMatrix = nullptr;
  36. std::map<int, NozzleParam> m_mapNozzleParam;
  37. CMachineCalibration* m_pCalibrationDB = nullptr;
  38. CProduct* m_pProduct = nullptr;
  39. CManageDB* m_pCManageDB = nullptr;
  40. int m_nMatrixID = 1;
  41. std::string m_sName = "TipMatrix";
  42. };
  43. }