IRobot.cs 1.0 KB
using OnlineStore.LoadCSVLibrary;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DeviceLibrary
{
    public interface IRobot
    {
        //List<ConfigMoveAxis> moveAxisList { get; set; }
        DeviceConfig Config { get; set; }
        string DeviceName { get; }
        string DeviceNameShow { get; }

        bool canRunning { get; set; }
        bool isBusy { get; set; }
        bool isAlarm { get; set; }        
        RunStatus runStatus { get; set; }
        bool Init(out string msg);
        void Run();
        //void WorkProcess();
        bool DeviceCheck();
        bool SafeCheck();
        void BeginHomeReset(bool firstRun);
        void Stop();

        bool UserPause { get; set; }
        bool IgnoreSafecheck { get; set; }
        bool IgnoreGratingSignal { get; set; }
        event EventHandler<List<MoveInfo>> ProcessMoveinfoEvent;
        event EventHandler<List<Msg>> ProcessMsgEvent;
    }
    public enum RunStatus
    {
        Stop,
        Running,
        HomeReset
    }
}