| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 | using System;using System.Collections.Generic;using System.Linq;using System.Runtime.Serialization;using System.Text;using System.Threading.Tasks;using Aitex.Core.Common.DeviceData;using Aitex.Sorter.Common;using MECF.Framework.Common.Equipment;namespace MECF.Framework.Common.Schedulers{    public enum EnumMoveType    {        Place,        Pick,        Move,    }    [DataContract]    [Serializable]    //helper class    public class MoveItem :  IDeviceData    {        [DataMember]        public ModuleName SourceModule { get; set; }        [DataMember]        public int SourceSlot { get; set; }        [DataMember]        public ModuleName DestinationModule { get; set; }        [DataMember]        public int DestinationSlot { get; set; }        [DataMember]        public Hand RobotHand { get; set; }        public ModuleName Module        {            get            {                return ModuleHelper.IsTMRobot(SourceModule) || ModuleHelper.IsEFEMRobot(SourceModule) ? DestinationModule : SourceModule;            }        }        public EnumMoveType TransferType        {            get            {                if (ModuleHelper.IsTMRobot(SourceModule) || ModuleHelper.IsEFEMRobot(SourceModule))                    return EnumMoveType.Place;                else if (ModuleHelper.IsTMRobot(DestinationModule) || ModuleHelper.IsEFEMRobot(DestinationModule))                    return EnumMoveType.Pick;                else                    return EnumMoveType.Move;            }        }        public MoveItem(ModuleName sourceModule, int sourceSlot, ModuleName destinationModule, int destinationSlot, Hand robotHand)        {            this.SourceModule = sourceModule;            this.SourceSlot = sourceSlot;            this.DestinationModule = destinationModule;            this.DestinationSlot = destinationSlot;            this.RobotHand = robotHand;        }        public void Update(IDeviceData data)        {            throw new NotImplementedException();        }    }}
 |