using Aitex.Core.RT.Routine; using MECF.Framework.Common.Jobs; using CyberX8_Core; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MECF.Framework.Common.Routine { public interface ICycle : IRoutine { bool HasJobRunning { get; } RState CycleState { get; } bool StopJob(string jobName, out string reason); bool ResumeJob(string jobName, out string reason); bool ResumeAllJobs(); bool PauseJob(string jobName, out string reason); bool PauseAllJobs(); bool StartJob(string jobName, out string reason); bool CreateJob(Dictionary param, out string reason); void Clear(); bool ManualReturnWafer(object[] objs); RState CheckManualReturnWafer(); RState ReturnAllWafers(); bool CheckJobJustDone(out string sJobName); bool CheckAllJobDone(); bool SystemAbort(); bool RemoveAllJob(); } }