using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ComponentModel; using FLY.Thick.Base.Common; using System.Collections.ObjectModel; using Misc; using FObjBase.Reflect; using FObjBase; namespace FLY.Thick.Base.IService { public interface IScanCorrService : INotifyPropertyChanged { /// /// 使能修正 /// bool Enable{set;get;} /// /// 当前修正的组 /// int CurrGroupIndex { get; } /// /// 当前进度 0 - 100 /// int Progress { get; } /// /// 数据更新时间 /// DateTime[] UpdateTimes { get; } /// /// 正在机架修正中 /// bool IsRunning { get; } /// /// 来回次数 /// int ScanCnt { get; } /// /// 平滑 /// int SmoothFactor { get; } /// /// 开始机架修正 /// /// 组序号 /// 扫描次数 /// 平滑 void Start(int groupIndex, int scanCnt, int smoothFactor); /// /// 清空组数据 /// /// void Clear(int groupIndex); /// /// 设置修正曲线 /// /// 组序号 /// 修正数据 /// 均值 /// 原始数据 void SetCorrData(int groupIndex, int[][] corrDatas, int avg, int[][] orgDatas); /// /// 获取 组 的 机架修正信息 /// /// /// /// [Call(typeof(GetScanCorrGroupResponse))] void GetScanCorrGroup(int groupIndex, AsyncCBHandler asyncDelegate, object asyncContext); } /// /// /// public class GetScanCorrGroupResponse { /// /// 组序号 /// public int GroupIndex { get; set; } /// /// 更新时间 /// public DateTime UpdateTime { get; set; } /// /// 机架准备好了 /// public bool IsDataOK { get; set; } /// /// 机架总长,脉冲 /// public int PosLen { get; set; } /// /// 1个grid = N个pos /// public int PosOfGrid { get; set; } /// /// 原始 正反方向机架AD值数据, grid数据 /// public int[][] OrgDatas { get; set; } /// /// 修正用 正反方向机架AD值数据 /// public int[][] CorrDatas { get; set; } /// /// CorrDatas 的均值 /// public int Avg { get; set; } } }