using FLY.Thick.Blowing.IService.IBulkDBServicePack; using FLY.Thick.Blowing.Server.Model; using FObjBase; using Misc; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FLY.Thick.Blowing.IService { /// /// 基于DB 的 bulkdata /// public interface IBulkDbService : INotifyPropertyChanged { /// /// 数据库中总数量,当它变化了,肯定有新数据 /// int Count { get; } /// /// 开始产生数据时间 /// DateTime StartTime { get; } /// /// 最后产生数据时间 /// DateTime EndTime { get; } /// /// 当前生产,已经结束,已经下辊了 /// bool IsFinished { get; } /// /// 临时数据改变 /// event BulkDBTempFrameChangedEventHander TempFrameChanged; /// /// 获取N幅数据 /// /// /// /// void GetFrame( Pack_GetFrameRequest request, AsyncCBHandler AsyncDelegate, object AsyncContext); /// /// 获取纵向趋势图 /// /// /// /// void GetTrend( Pack_GetTrendRequest request, AsyncCBHandler AsyncDelegate, object AsyncContext); /// /// 完成 /// void Finish(); } } namespace FLY.Thick.Blowing.IService.IBulkDBServicePack { public class Pack_GetFrameRequest { /// /// 第1个数据 序号 /// public Int64 Index; /// /// 从后向前获取N幅数据 /// public int Count; } public class Pack_GetFrameReponse { public Pack_GetFrameRequest Request; public List Values; } public class Pack_GetTrendRequest { /// /// 第1个数据 序号 /// public Int64 Index; /// /// 长度 /// public int Count; } public class Pack_GetTrendReponse { public Pack_GetTrendRequest Request; public List Values; } public class TrendValue { public DateTime Time { get; set; } public double Value { get; set; } public double Sigma { get; set; } } public class BulkDBTempFrameChangedEventArgs : EventArgs { /// /// 开始位置 /// public int StartIndex { get; set; } /// /// 数据 /// public double[] D { get; set; } } public delegate void BulkDBTempFrameChangedEventHander(object sender, BulkDBTempFrameChangedEventArgs e); }