IRejectService.cs 1.92 KB
Newer Older
潘栩锋's avatar
潘栩锋 committed
1 2 3 4 5
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
6 7
using FObjBase;
using FObjBase.Reflect;
潘栩锋's avatar
潘栩锋 committed
8 9 10 11 12 13 14 15 16 17

namespace FLY.Thick.Base.IService
{
    //剔除!!!!!
    public interface IRejectService:INotifyPropertyChanged
    {
        /// <summary>
        /// 使能
        /// </summary>
        bool Enable { get; set; }
18

潘栩锋's avatar
潘栩锋 committed
19
        /// <summary>
20
        ///  规格范围,Math.Abs(value-Target) > UpperLimitRatio*Target 都要被删除
潘栩锋's avatar
潘栩锋 committed
21
        /// </summary>
22 23
        double LimitRangeRatio { get; set; }

潘栩锋's avatar
潘栩锋 committed
24
        /// <summary>
25
        /// 剔除阈值,低于 ThresholdRatio*Target 都要被删除
潘栩锋's avatar
潘栩锋 committed
26
        /// </summary>
27 28
        double ThresholdRatio { get; set; }
        
潘栩锋's avatar
潘栩锋 committed
29 30 31
        /// <summary>
        /// 滤波范围,单位脉冲
        /// </summary>
32 33
        int SmoothRange { get; set; }
        
潘栩锋's avatar
潘栩锋 committed
34 35 36
        /// <summary>
        /// 当前数据需要剔除,那么它的前后Range2个脉冲的数据都是删除,单位脉冲
        /// </summary>
37
        int RejectRange { get; set; }
潘栩锋's avatar
潘栩锋 committed
38 39

        /// <summary>
40
        /// 调试数据更新时间,用于让客户端 决定什么时候 下载调试数据
潘栩锋's avatar
潘栩锋 committed
41
        /// </summary>
42 43 44 45 46 47 48 49 50 51 52
        DateTime DebugUpdateTime { get; }

        [Call(typeof(RejectDebugData))]
        void GetDebugData(AsyncCBHandler asyncDelegate, object asyncContext);

        void Apply();
    }
    public class RejectDebugData 
    {
        public int start_grid;

潘栩锋's avatar
潘栩锋 committed
53
        /// <summary>
54
        /// 滤波后的数据
潘栩锋's avatar
潘栩锋 committed
55
        /// </summary>
56
        public double[] filterDatas;
潘栩锋's avatar
潘栩锋 committed
57
        /// <summary>
58
        /// 剔除后的数据
潘栩锋's avatar
潘栩锋 committed
59
        /// </summary>
60
        public double[] rejectDatas;
潘栩锋's avatar
潘栩锋 committed
61 62 63
        /// <summary>
        /// 上面的数据,都是grid数据,最后需要以脉冲显示在画面上
        /// </summary>
64
        public int posOfGrid;
潘栩锋's avatar
潘栩锋 committed
65
        /// <summary>
66
        /// 目标值
潘栩锋's avatar
潘栩锋 committed
67
        /// </summary>
68
        public double target;
潘栩锋's avatar
潘栩锋 committed
69 70
    }
}