using FLY.Thick.Base.Common;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FLY.Thick.Base.IService
{
    public interface IFilmPositionDetect : INotifyPropertyChanged
    {
        /// <summary>
        /// 线速度 m/min
        /// </summary>
        double FilmVelocity { get; }
        /// <summary>
        /// 膜位置, m
        /// </summary>
        double FilmPosition { get; }


        /// <summary>
        /// 线速度阀值,低于阀值,速度直接变为0
        /// </summary>
        double FilmVThreshold { get; set; }

        /// <summary>
        /// 编码器2 放大
        /// </summary>
        float Encoder2_comp { get; set; }

        /// <summary>
        /// 线速度来源
        /// </summary>
        FilmVSRC FilmVSrc { get; set; }

        /// <summary>
        /// 线速度:编码器2 mm/pulse
        /// </summary>
        double Encoder2_mmpp { get; set; }

        /// <summary>
        /// 线速度:1圈多少mm
        /// </summary>
        double MmOfR { get; set; }


        /// <summary>
        /// 设置膜位置为某值
        /// </summary>
        /// <param name="filmPosition"></param>
        void Reset(double filmPosition);

    }
}