| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 | using System;using System.Collections.Generic;using System.Diagnostics;using Aitex.Core.Common;using Aitex.Sorter.Common;using MECF.Framework.Common.Equipment;using CyberX8_Core;namespace CyberX8_RT.Devices{    public interface IEfemMessage : IHardwareMessage    {        EfemOperation Operation { get; set; }    }    interface IAlign    {        void Lift();        void Align(WaferSize size);    }    public interface ILoadport    {        ModuleName Module            { get; set; }        //DoorState DoorStatus         { get; set; }        DeviceState Status         { get; set; }        bool HasCassette             { get; set; }        bool IsMapped                { get; set; }        bool IsLoaded { get; set; }        bool IsClamped { get; set; }        string CarrierId { get; set; }        bool IsThicknessValid { get;  }        string SmartTag { get; set; }        WaferStatus[] WaferInfo      { get; set; }        bool JobDone { get; set; }        Stopwatch TimerNotifyJobDone { get; set; }        void Home();        void NoteJobStart();        void NoteJobComplete();        void GotoMap(string extend);        void Map();        void SetOnline(bool on);        void OnCarrierIDRead(string data);        void OnCarrierIDReadFailed(string data);        void OnLoadFailed(string data);        void OnHomed();        void OnLoaded();        void OnUnloaded();        void OnUnloadFailed(string data);        void OnClamped(bool isUnloadClamp);        void OnClampFailed(string data);        void OnUnclamped();        void OnUnclampFailed(string data);        void OnCarrierIDWrite(string data);        void OnCarrierIDWriteFailed(string data);        void OnTagDataRead(string data);        void OnTagDataReadFailed(string data);        void OnTagDataWrite(string data);        void OnTagDataWriteFailed(string data);    }    public interface IMessageHandler    {        bool IsCompleted { get; }        event EventHandler<EfemActionArgs> CommandUpdated;        event EventHandler<EfemEventArgs> EventUpdated;        event EventHandler<EfemErrorArgs> ErrorOccurred;        void Send(IEfemMessage msg);        //void Send(string str);        void ReceiveMessage(string str);    }    public class EfemActionArgs : EventArgs    {        public ushort ID                 { get; set; }        public ModuleName Module         { get; set; }        public EfemOperation CommandType { get; set; }        public ActionStatus Status       { get; set; }        public string Data               { get; set; }    }    public class EfemEventArgs : EventArgs    {        public string EvtStr             { get; set; }        public ModuleName Module         { get; set; }        public EfemOperation CommandType { get; set; }        public IList<string> DataList    { get; set; }    }    public class EfemErrorArgs : EventArgs    {        public string Factor      { get; set; }        public string Description { get; set; }        public ModuleName Module  { get; set; }        public string Message     { get; set; }        public EfemOperation CommandType { get; set; }        public ActionStatus Status { get; set; }        public string Data { get; set; }        public ushort ID { get; set; }    }}
 |