using SKMC.Api.Common; using SKMC.Api.Motion.Control; using System; namespace SKMC.Api.Process.Model { /// /// 流程站点的必要动作接口 /// public abstract class ProcessAction { protected readonly IMotionChecker motionChecker = ObjectFactory.Resolve(); protected readonly IMotionControl motionControl = ObjectFactory.Resolve(); public ProcessStation ProcessStation { get; set; } /// /// 运动安全检查函数 /// public Func SafeChecker { get; set; } /// /// 流程站点的复位前检查 /// 例如站内是否有物料残留等 /// /// public abstract bool ResetCheck(); /// /// 流程站点的复位动作 /// public abstract void Reset(); /// /// 流程站点的快速复位动作 /// //public abstract void ResetFast(); /// /// 流程站点的自检动作 /// public virtual void SelfCheck() { } /// /// 动作初始化以及变量等数据初始化 /// public abstract void Init(); /// /// 流程每次循环开始前的准备动作 /// public virtual void Prepare() { } /// /// 暂停 /// public virtual void Pause() { } /// /// 继续 /// public virtual void Resume() { } /// /// 停止 /// public virtual void Stop() { } } }