using FLY.Thick.Blowing.IService;
using FLY.Thick.BlowingScan.Common;
using FObjBase;
using Misc;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;

namespace FLY.Thick.BlowingScan.IService
{
    /// <summary>
    /// 吹膜扫描
    /// </summary>
    public interface IBlowingScanService : IBlowing
    {
        /// <summary>
        /// 平滑
        /// </summary>
        int Smooth { get; set; }


        /// <summary>
        /// 探头宽度,用于解方程,可以与实际不符合 单位脉冲
        /// </summary>
        int SensorWidth { get; set; }
        /// <summary>
        /// 多少次扫描解一次方程
        /// </summary>
        int SolveCnt { get; set; }
        /// <summary>
        /// 缓冲区第一个记录序号
        /// </summary>
        int FirstBM { get; }
        /// <summary>
        /// 缓冲区最后一个记录序号
        /// </summary>
        int LastBM { get; }
        /// <summary>
        /// 获取 缓冲区列表
        /// </summary>
        /// <param name="AsyncDelegate">retdata = GetBufListReponse</param>
        /// <param name="AsyncState"></param>
        void GetBufList(AsyncCBHandler AsyncDelegate, object AsyncState);
    }

    /// <summary>
    /// 缓冲列表
    /// </summary>
    public class GetBufListReponse
    {
        public int firstbm;
        public int lastbm;
        public List<FlyData_BlowingScan> datas;
    }
}