using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
using System.Reflection;
using System.Diagnostics;
using System.Windows.Media;


namespace FLY.IBC.Common
{
    public class IBCData:INotifyPropertyChanged
    {
        public IBCData()
        {
        }

        /// <summary>
        /// 与PLC连接状态
        /// </summary>
        public bool IsConnectedWithPLC { get; set; }

        #region 辅助代码生成
        /// <summary>
        /// 进风指示
        /// </summary>
        public bool IsInletAirOn { get; set; }

        /// <summary>
        /// 进风运行频率(Hz)(自动调节)
        /// </summary>
        public float InletAirFreq { get; set; }

        /// <summary>
        /// 进风设定频率(Hz)
        /// </summary>
        public float InletAirFreqSet { get; set; }

        /// <summary>
        /// 出风指示
        /// </summary>
        public bool IsOutletAirOn { get; set; }

        /// <summary>
        /// 出风运行频率(Hz)
        /// </summary>
        public float OutletAirFreq { get; set; }

        /// <summary>
        /// 出风设定频率(Hz)
        /// </summary>
        public float OutletAirFreqSet { get; set; }

        /// <summary>
        /// 出风设定频率后通知
        /// </summary>
        public bool IsOutletAirFreqChanged { get; set; }

        /// <summary>
        /// 折径显示(mm)
        /// </summary>
        public float FilmWidth { get; set; }

        /// <summary>
        /// 折径设定(mm)
        /// </summary>
        public float FilmWidthSet { get; set; }

        /// <summary>
        /// 折径设定后通知
        /// </summary>
        public bool IsFilmWidthChanged { get; set; }

        /// <summary>
        /// 误差校正
        /// </summary>
        public float ErrorCorrection { get; set; }

        /// <summary>
        /// IBC自动
        /// </summary>
        public bool IsIBCAuto { get; set; }

        /// <summary>
        /// K1
        /// </summary>
        public float K1 { get; set; }

        /// <summary>
        /// K2
        /// </summary>
        public float K2 { get; set; }

        /// <summary>
        /// K3
        /// </summary>
        public float K3 { get; set; }

        /// <summary>
        /// L
        /// </summary>
        public float L { get; set; }

        /// <summary>
        /// 膜泡校正A
        /// </summary>
        public float BubbleCorrA { get; set; }

        /// <summary>
        /// 膜泡校正B
        /// </summary>
        public float BubbleCorrB { get; set; }

        /// <summary>
        /// 膜泡校正C
        /// </summary>
        public float BubbleCorrC { get; set; }

        /// <summary>
        /// 膜泡校正R
        /// </summary>
        public float BubbleCorrR { get; set; }

        /// <summary>
        /// 采样周期
        /// </summary>
        public float SampleInterval { get; set; }

        /// <summary>
        /// 区间1设置
        /// </summary>
        public float Area1Set { get; set; }

        /// <summary>
        /// 区间1P
        /// </summary>
        public float Area1P { get; set; }

        /// <summary>
        /// 区间1I
        /// </summary>
        public float Area1I { get; set; }

        /// <summary>
        /// 区间1D
        /// </summary>
        public float Area1D { get; set; }

        /// <summary>
        /// 区间1DI
        /// </summary>
        public float Area1DI { get; set; }

        /// <summary>
        /// 调节系数
        /// </summary>
        public float AdjustFactor { get; set; }

        /// <summary>
        /// PID结果
        /// </summary>
        public float PIDResult { get; set; }

        /// <summary>
        /// PID调节
        /// </summary>
        public float PIDAdjust { get; set; }

        /// <summary>
        /// 进风速度
        /// </summary>
        public float InletAirVelocity { get; set; }

        /// <summary>
        /// 出风速度
        /// </summary>
        public float OutletAirVelocity { get; set; }

        /// <summary>
        /// 区间2设置
        /// </summary>
        public float Area2Set { get; set; }

        /// <summary>
        /// 区间2P
        /// </summary>
        public float Area2P { get; set; }

        /// <summary>
        /// 区间2I
        /// </summary>
        public float Area2I { get; set; }

        /// <summary>
        /// 区间2D
        /// </summary>
        public float Area2D { get; set; }

        /// <summary>
        /// 传感器1盲区
        /// </summary>
        public float Sensor1DeadZone { get; set; }

        /// <summary>
        /// 传感器2盲区
        /// </summary>
        public float Sensor2DeadZone { get; set; }

        /// <summary>
        /// 传感器3盲区
        /// </summary>
        public float Sensor3DeadZone { get; set; }

        /// <summary>
        /// 传感器1系数
        /// </summary>
        public float Sensor1Factor { get; set; }

        /// <summary>
        /// 传感器2系数
        /// </summary>
        public float Sensor2Factor { get; set; }

        /// <summary>
        /// 传感器3系数
        /// </summary>
        public float Sensor3Factor { get; set; }

        /// <summary>
        /// 进风变频故障报警
        /// </summary>
        public bool IsInletAirMotorError { get; set; }

        /// <summary>
        /// 出风变频故障报警
        /// </summary>
        public bool IsOutletAirMotorError { get; set; }

        /// <summary>
        /// 进风变频通讯报警
        /// </summary>
        public bool IsInletAirCommError { get; set; }

        /// <summary>
        /// 出风变频通讯报警
        /// </summary>
        public bool IsOutletAirCommError { get; set; }

        #endregion

        public event PropertyChangedEventHandler PropertyChanged;

    }
}