| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239 | using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Runtime.Serialization;using System.Xml;using System.Xml.Serialization;using System.Xml.Schema;using Aitex.Core.Util;namespace Aitex.Platform{    /// <summary>    /// Defines sequencer running mode.    /// </summary>    [Serializable]    [DataContract]    public enum SystemMode    {        /// <summary>        /// In Auto mode, operators cannot manually create, delete, and move susceptors; instead,        /// operators can only run sequences.        /// </summary>        [EnumMember]        Auto = 0,        /// <summary>        /// In Manual mode, operators can manually create, delete, and move susceptors, but cannot        /// run sequences.        /// </summary>        [EnumMember]        Manual,        /// <summary>        /// In AtmCycle mode, the sequencer moves susceptor from chamber to chamber without checking        /// any interlocks: chambers can be at atmosphere condition, and can be online or offline.        /// It moves susceptor from Loadlock to the buffer first, and the moves it to the first reactor,         /// and then moves the susceptor from that reactor to the next one one by one. After all reactors         /// are traversed, it moves susceptor to the cooldown. And finally moves the susceptor from         /// cooldown to the loadlock. At this point, the cycle is completed.        /// </summary>        [EnumMember]        Cycle    }    /// <summary>    /// Tower light status define    /// </summary>    [Serializable]    [DataContract]    public enum TowerLight    {        /// <summary>        /// Light red        /// </summary>        [EnumMember]        Red,        /// <summary>        /// Light blue        /// </summary>        [EnumMember]        Blue,        /// <summary>        /// Light green        /// </summary>        [EnumMember]        Green,        /// <summary>        //        /// </summary>        [EnumMember]        Buzzer,        /// <summary>        //        /// </summary>        [EnumMember]        Max,    }    /// <summary>    /// Tower light status define    /// </summary>    [Serializable]    [DataContract]    public enum TowerLightStatus    {        /// <summary>        /// Light steady off        /// </summary>        [EnumMember]        Off,        /// <summary>        /// Light steady on        /// </summary>        [EnumMember]        On,        /// <summary>        /// Light blinking        /// </summary>        [EnumMember]        Blinking,        /// <summary>        /// Unknow state        /// </summary>        [EnumMember]        Unknow,    }         [Serializable]    [DataContract]    public enum PressureCtrlMode    {        [EnumMember]        TVPressureCtrl = 1,        [EnumMember]        TVPositionCtrl = 2,    }    [Serializable]    [DataContract]    public enum RfMode    {        [EnumMember]        ContinuousWaveMode = 1,        [EnumMember]        PulsingMode = 2,    }     [Serializable]    [DataContract]    public enum CarrierDataType    {        [EnumMember]        NONE,        [EnumMember]        Created,        [EnumMember]        Deleted,        [EnumMember]        SusceptorMove,        [EnumMember]        ProcessStart,        [EnumMember]        ProcessNormalEnd,        [EnumMember]        ProcessErrStop,        [EnumMember]        ProcessManualAbort,        [EnumMember]        RecipeStepStart,        [EnumMember]        RecipeStepNormalEnd,        [EnumMember]        RecipeStepPaused,        [EnumMember]        RecipeStepResume,        [EnumMember]        RecipeStepJump,        [EnumMember]        RecipeUpdated,        [EnumMember]        PreProcessStart,        [EnumMember]        PreProcessStep,        [EnumMember]        PreProcessNormalEnd,        [EnumMember]        PreProcessErrorEnd,        [EnumMember]        PostProcessStart,        [EnumMember]        PostProcessStep,        [EnumMember]        PostProcessNormalEnd,        [EnumMember]        PostProcessErrorEnd,        [EnumMember]        MoUsedWeight,    }    [Serializable]    [DataContract]    public enum EndByCondition    {        [EnumMember]        EndByRfTime,        [EnumMember]        EndByStepTime,        [EnumMember]        EndByHeatUp,    }}
 |