RobotData.cs 1.9 KB
using System.Text;
using static JAKA.JKTYPE;

namespace JAKA
{
    public class RobotData
    {
        /// <summary>
        /// 机器人状态数据
        /// </summary>
       // public RobotState RobotState;
        /// <summary>
        /// 机器人状态检测数据类型
        /// </summary>
        public RobotStatus RobotStatus;
        /// <summary>
        /// 异常消息
        /// </summary>
        public string Errorinfo="";
        /// <summary>
        /// 程序运行状态
        /// </summary>

        public ProgramState ProgramState;
        /// <summary>
        /// 当前命令
        /// </summary>
        public string CurCmd = "";
        public string RecvMsg = "";
        public bool Online = false;
        public RobotData()
        {
        }
        public override bool Equals(object obj)
        {
            RobotData other = obj as RobotData;
            if (other == null)
                return false;
            if (CurCmd.Equals(other.CurCmd) && RecvMsg.Equals(other.RecvMsg) && Online.Equals(other.Online) &&
                Errorinfo.Equals(other.Errorinfo)&& RobotStatus.emergency_stop.Equals(other.RobotStatus.emergency_stop)&&
                RobotStatus.powered_on.Equals(other.RobotStatus.powered_on)&&RobotStatus.enabled.Equals(other.RobotStatus.enabled)&&
                RobotStatus.inpos.Equals(other.RobotStatus.inpos)&& RobotStatus.protective_stop.Equals(other.RobotStatus.protective_stop)&&
                RobotStatus.on_soft_limit.Equals(other.RobotStatus.on_soft_limit)&& RobotStatus.is_socket_connect.Equals(other.RobotStatus.is_socket_connect)&&
                RobotStatus.drag_status.Equals(other.RobotStatus.drag_status)&& RobotStatus.rapidrate.Equals(other.RobotStatus.rapidrate)&&
                ProgramState.Equals(other.ProgramState))
                return true;
            return false;
        }
    }
}