CStepActuator.h 845 B

12345678910111213141516171819202122232425262728293031323334353637
  1. //Step执行器,用于执行Step动作列表
  2. #pragma once
  3. #include <map>
  4. #include "CStep.h"
  5. class CStepActuator
  6. {
  7. typedef struct
  8. {
  9. CStepActuator* pClass;
  10. UINT iGroupId; //执行的GroupId
  11. } RUN_STEP_PARAMETER;
  12. private:
  13. // 维护所有step,key表示stepIndex
  14. map<UINT, vector<STEP_DETAIL>> m_mapStepList;
  15. CProduct* m_pCProduct;
  16. CMachineSetup* m_pCMachineSetup;
  17. //是否循环执行
  18. bool m_bLoopExecute;
  19. /*static PTP_POOL sm_tPool;
  20. static TP_CALLBACK_ENVIRON* m_tcEnv;*/
  21. //void CreateStepRunThreadpool();
  22. static VOID CALLBACK threadActuator(PTP_CALLBACK_INSTANCE Instance, PVOID Parameter, PTP_WORK Work);
  23. LONG RunStep(UINT iGroupId);
  24. public:
  25. CStepActuator(map<UINT, vector<STEP_DETAIL>> mapStepList);
  26. //执行
  27. LONG Execute(bool bLoopExecute = false);
  28. };