CStepTransferPick.h 897 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #pragma once
  2. #include "CStepBase.h"
  3. //从校准台上取晶
  4. class __declspec(dllexport) CStepTransferPick :
  5. public CStepBase
  6. {
  7. struct Input_Data
  8. {
  9. UINT m_nCurrBondDieIndex;
  10. UINT m_nCurrBondHeadId;
  11. template <class Archive>
  12. void serialize(Archive& ar)
  13. {
  14. ar(cereal::make_nvp("CurrBondDieIndex", m_nCurrBondDieIndex)
  15. , cereal::make_nvp("CurrBondHeadId", m_nCurrBondHeadId)
  16. );
  17. }
  18. };
  19. private:
  20. UINT m_nCurrBondDieIndex = 0;
  21. UINT m_nNextDieIndex = 0;
  22. UINT m_nNeedBondDieNum = 0;
  23. UINT m_nBondedDieNum = 0;
  24. Input_Data m_InputData;
  25. CTransferTable* m_pTransferTable = nullptr;
  26. private:
  27. //检测参数
  28. //virtual LONG CheckParameter() override;
  29. //预处理,用于检测Step运行前的前置条件
  30. virtual LONG Pretreatment() override;
  31. //运行Step动作
  32. virtual LONG Run() override;
  33. //数据保存,用于Step运行后的数据保存
  34. virtual LONG PostData() override;
  35. public:
  36. CStepTransferPick();
  37. };