using System;
using System.Runtime.Serialization;

namespace MECF.Framework.Common.Device.Bases
{
    /// <summary>
    /// 信号灯塔的控制状态枚举。
    /// <br/>
    /// 该枚举同时决定信号塔状态合并时的优先级，值越小优先级越高。
    /// </summary>
    [Serializable]
    [DataContract]
    public enum SignalTowerActions
    {
        /// <summary>
        /// 使用STEvents配置文件中配置的工作模式模板
        /// </summary>
        [EnumMember] Customized = int.MaxValue - 3,

        /// <summary>
        /// 打开，灯亮或蜂鸣器响
        /// </summary>
        [EnumMember] On = int.MaxValue - 2,

        /// <summary>
        /// 关闭
        /// </summary>
        [EnumMember] Off = int.MaxValue - 1,

        /// <summary>
        /// 未知状态
        /// </summary>
        [EnumMember] Unknown = int.MaxValue,
    }
}
