using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using FObjBase;
using FLY.Thick.Base.Common;
using Misc;

namespace FLY.Thick.Base.OBJ_INTERFACE
{
    public class BORDERSEARCH_OBJ_INTERFACE
    {
        #region Pack
        public class Pack_Params
        {
            public bool enable;
            public Range valid;
            public bool tempADBySet;
            public int tempad;
            public int temprange;
            public int n;
            public int sensorwidth;
            public int n2;
            public int n3;
            public bool isBreakDetect;
            public bool isTempRangeByPercent;
            public double tempRangePercent;
        }
        public class Pack_Result 
        {
            public Range borderForw;
            public Range borderBackw;
            public Range border;
            public int width;
            public int mid;

        }

        public class Pack_Data 
        {
            public int[] data;
        }
        #endregion
        #region GetValue
        /// <summary>
        /// Pack_Params
        /// </summary>
        public const UInt16 GET_PARAMS = 0;
        /// <summary>
        /// Pack_Result
        /// </summary>
        public const UInt16 GET_RESULT = 1;
        /// <summary>
        /// Pack_Data
        /// </summary>
        public const UInt16 GET_DATAS = 2;
        #endregion
        #region SetValue
        /// <summary>
        /// Pack_GetParam
        /// </summary>
        public const UInt16 SET_PARAMS = 0;
        #endregion
        #region PushMsg
        /// <summary>
        /// Pack_GetParam
        /// </summary>
        public const UInt16 PUSH_PARAMS = 0;
        /// <summary>
        /// Pack_GetResult
        /// </summary>
        public const UInt16 PUSH_RESULT = 1;
        /// <summary>
        /// Pack_Data
        /// </summary>
        public const UInt16 PUSH_DATAS = 2;
        #endregion
    }
}
