CUltraHeadDiagnosis.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #pragma once
  2. #include "CUltraHead.h"
  3. #ifdef ULTRAHEAD_DIAGNOSIS_EXPORTS
  4. #define ULTRAHEAD_DIAGNOSIS_DLL_API __declspec(dllexport)
  5. #else
  6. #define ULTRAHEAD_DIAGNOSIS_DLL_API //__declspec(dllimport)
  7. #endif
  8. class ULTRAHEAD_DIAGNOSIS_DLL_API CUltraHeadDiagnosis
  9. {
  10. public:
  11. struct XY_ACCURACY_TEST
  12. {
  13. int nRepeatedNum = 0;
  14. int nTempId = 0;
  15. int nGrabDelay = 0;
  16. double dMovePosX = 0;
  17. double dMovePosY = 0;
  18. double dMovePosZ = 0;
  19. bool bMoveX = false;
  20. bool bMoveY = false;
  21. bool bMoveZ = false;
  22. int eSpeed = 2; //תΪö¾Ù
  23. int acc = 0; //¼ÓËÙ¶È
  24. int dec = 0; //¼õËÙ¶È
  25. long lCurrBondIndex;
  26. bool bPickDie = true;
  27. bool bBondDie = true;
  28. bool bLookUpDie = true;
  29. };
  30. private:
  31. CUltraHead* m_pCUltraHead = nullptr;
  32. vector<MODULE_CONFIG_STRUCT> m_vecConfig;
  33. XY_ACCURACY_TEST m_XY_AccuracyTestParam;
  34. HANDLE m_pRecvUltraNotice = NULL;
  35. HANDLE m_pRecvUltraDiagnosisNotice = NULL;
  36. LONG SetParam();
  37. LONG GetParam();
  38. LONG SetDataChangFunction();
  39. void DataChangNotice(string strDbName, string strTableName);
  40. public:
  41. CUltraHeadDiagnosis(CUltraHead* pUltraHeade);
  42. ~CUltraHeadDiagnosis();
  43. LONG BondHead_AccuracyTest(string cmd);
  44. LONG BondHead_PickBondTest(string cmd);
  45. long BondHead_PRAccuracyTest();
  46. LONG BondHead_PickAndBond_Diagnosis(string cmd);
  47. long CreateAccuracyTestTemp();
  48. void SetAccuracyTestTempId(int id) { m_XY_AccuracyTestParam.nTempId = id; SetParam(); }
  49. int GetAccuracyTestTempId() { return m_XY_AccuracyTestParam.nTempId;}
  50. };