#pragma once #include "IWorkflowManager.h" namespace DIOS::Dev::Detail::MachineryECOM { class CArmWorkflowManager : public IWorkflowManager { public: CArmWorkflowManager(); ~CArmWorkflowManager(); public: static CArmWorkflowManager *Instance(); virtual int ChangeWorkstation(const std::string& workstaion) override; virtual int ChangeExamMode(const std::string &examKey, const std::string &examType) override; virtual int ChangeToResetMode() override; virtual IExamHandler *GetCurrentWorkFlowHandler() override; virtual void EnterSystemReset() override; virtual void ExitSystemReset() override; virtual void EnterSystemResetSwing() override; virtual void ExitSystemResetSwing() override; virtual void EnterSystemResetCircular() override; virtual void ExitSystemResetCircular() override; virtual void SwitchScanning(DOF_MECH mech) override; private: static CArmWorkflowManager *m_instance; }; }