using System; using System.CodeDom; using System.Collections.Generic; using System.ComponentModel; using System.Globalization; using System.Linq; using System.Reflection; using System.Runtime.Serialization; using System.Text; using System.Windows.Data; using System.Windows.Input; using Aitex.Core.UI.MVVM; using MECF.Framework.Common.CommonData; namespace Aitex.Core.Common.DeviceData { [DataContract] [Serializable] public class AITAPCData : NotifiableItem, IDeviceData { [DataMember] public string Module { get; set; } [DataMember] public string DeviceName { get; set; } [DataMember] public string DisplayName { get; set; } [DataMember] public string DeviceSchematicId { get; set; } [DataMember] public string UnitPosition { get; set; } [DataMember] public string UnitPressure { get; set; } [DataMember] public string Description { get; set; } /// /// 量程 /// [DataMember] public double MaxValuePosition { get; set; } [DataMember] public double MaxValuePressure { get; set; } /// /// MFC,PC /// [DataMember] public string Type { get; set; } [DataMember] public int ModeFeedback { get; set; } [DataMember] public int ModeSetPoint { get; set; } [DataMember] public float PositionFeedback { get; set; } [DataMember] public float PressureFeedback { get; set; } [DataMember] public float Pressure1Feedback { get; set; } [DataMember] public float Pressure2Feedback { get; set; } [DataMember] public float PressureSetPoint { get; set; }//界面设定 [DataMember] public float PositionSetPoint { get; set; }//界面设定 [DataMember] public float SlowRateSetPoint { get; set; }//界面设定 [DataMember] public float SlowTargetPressureSetPoint { get; set; }//界面设定 [DataMember] public int State { get; set; } [DataMember] public int HomingStatus { get; set; } [DataMember] public int SelectedControllerFeedback { get; set; } [DataMember] public int SelectedControllerSetPoint { get; set; }//界面设定 [DataMember] public string PIDTable//界面设定 { get; set; } [DataMember] public string AlarmWatchTable { get; set; } [DataMember] public float SetPoint { get; set; }//界面设定 [DataMember] public string CommandSetPoint { get; set; }//界面设定 [DataMember] public string LowPressWaitSetPoint { get; set; }//界面设定 [DataMember] public string HardError { get; set; } [DataMember] public string HomeStatusDisplay { get; set; } public string TextModeSetPoint { get { switch (ModeSetPoint) { case (int)(PressureControlMode.PositionControl): return "Valve Angle"; case (int)(PressureControlMode.Press1Control): return "Press"; case (int)(PressureControlMode.Press2Control): return "Press2"; case (int)(PressureControlMode.Open): return "Full Open"; case (int)(PressureControlMode.Close): return "Full Close"; case (int)(PressureControlMode.SlowVacuum): return "Slow Vac"; case (int)(PressureControlMode.Hold): return "Hold"; case (int)(PressureControlMode.Homing): return "Homing"; default: return "Idle"; } } } public string TextModeFeedback { get { switch (ModeFeedback) { case (int)(PressureControlMode.PositionControl): return "Valve Angle"; case (int)(PressureControlMode.Press1Control): return "Press"; case (int)(PressureControlMode.Press2Control): return "Press2"; case (int)(PressureControlMode.Open): return "Full Open"; case (int)(PressureControlMode.Close): return "Full Close"; case (int)(PressureControlMode.SlowVacuum): return "Slow Vac"; case (int)(PressureControlMode.Hold): return "Hold"; case (int)(PressureControlMode.Homing): return "Homing"; default: return "Idle"; } } } public AITAPCData() { DisplayName = "Undefined"; UnitPosition = "%"; UnitPressure = "mTorr"; Type = "TV"; MaxValuePosition = 100; MaxValuePressure = 1000; } public void Update(IDeviceData data) { throw new NotImplementedException(); } } }