using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using System.Text.RegularExpressions;
using FLY.Thick.RemoteHistory;
using System.ComponentModel;
using FLY.Thick.Blowing.IService;

namespace FLY.FeedbackRenZiJia.Common
{

    public class FlyData_FeedbackHeat
    {
        /// <summary>
        /// 开始测量时间!!!
        /// </summary>
        public DateTime Time { get; set; }
        /// <summary>
        /// 结束测量时间
        /// </summary>
        public DateTime EndTime { get; set; }


        /// <summary>
        /// 方向
        /// </summary>
        public Misc.DIRECTION Direction;

        /// <summary>
        /// 复位区号
        /// </summary>
        public int OrgBoltNo = 1;

        /// <summary>
        /// 旋转架旋转角度
        /// </summary>
        public double RAngle = 350;

        /// <summary>
        /// 膜距离
        /// </summary>
        public double FilmLength = 24;

        /// <summary>
        /// 旋转时间
        /// </summary>
        public TimeSpan RotatePeriod;

        /// <summary>
        /// 旋转次数
        /// </summary>
        public int RotateCnt;

        /// <summary>
        /// 厚度数据,  大小 NBolts
        /// </summary>
        public int[] Thicks;

        /// <summary>
        /// 分区表
        /// </summary>
        public List<BoltMapCell> Boltmap;
        /// <summary>
        /// 开始改变加热时间
        /// </summary>
        public DateTime HTime;
        /// <summary>
        /// TODO 删除 加热数据编号,每次加热改变,编号++,这样可以不用比较加热是否相同
        /// </summary>
        public int HNo = -1;
        /// <summary>
        /// 加热数据,100%, 大小 ChannelCnt
        /// </summary>
        public int[] Heats;

        /// <summary>
        /// 稳定状态
        /// </summary>
        public STABILITY Stability = STABILITY.IDLE;

    }


    /// <summary>
    /// 稳定性
    /// </summary>
    public enum STABILITY
    {
        /// <summary>
        /// 待定,不知道!!
        /// </summary>
        IDLE = 0,
        /// <summary>
        /// 加热点,还没到达测厚仪。  其它状态都是加热已经起效了,顶多不稳定而已。
        /// </summary>
        ERROR_NO_ARRIVE = -1,
        /// <summary>
        /// 旋转次数太少,位置不能确定
        /// </summary>
        ERROR_POSITION_NOTSURE = -2,
        /// <summary>
        /// 一副数据,Sigma > 15% : 不稳定,变化太大,超出控制范围 
        /// </summary>
        ERROR_SIGMA_OVERSIZE = -3,
        /// <summary>
        /// 连续两幅图旋转时间变化 > 10%:不稳定,旋转速度波动大,测量不准确
        /// </summary>
        ERROR_ROTATE_CHANGED = -4,
        /// <summary>
        /// 连续两幅图厚度均值变化 > 10%: 不稳定,厚度波动大
        /// </summary>
        ERROR_THICK_CHANGED = -5,





        /// <summary>
        /// 不稳定,不相关
        /// </summary>
        ERROR_CORREL = -6,

        /// <summary>
        /// 加热与厚度差,相关性很高
        /// </summary>
        OK_HEAT_AND_THICK_CORREL = 3,
        /// <summary>
        /// 加热为0,加热与厚度差,相关性很高
        /// </summary>
        OK_CORREL = 2,
    }






}