using System; using System.CodeDom; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Reflection; using System.Runtime.Serialization; using System.Text; using System.Windows.Input; using Aitex.Core.UI.MVVM; using MECF.Framework.Common.CommonData; namespace Aitex.Core.Common.DeviceData { [Serializable] [DataContract] public enum PressureCtrlMode { [EnumMember] Undefined = 0, [EnumMember] TVPressureCtrl = 1, [EnumMember] TVPositionCtrl = 2, [EnumMember] TVOpen = 3, [EnumMember] TVClose = 4, } [DataContract] [Serializable] public class AITThrottleValveData : 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 double Factor { get; set; } [DataMember] public int Mode { get; set; } [DataMember] public float PositionFeedback { get; set; } [DataMember] public float PressureFeedback { get; set; } [DataMember] public float PressureSetPoint { get; set; } [DataMember] public float PositionSetPoint { get; set; } [DataMember] public int State { get; set; } public string TextMode { get { switch (Mode) { case (int)(PressureCtrlMode.TVPositionCtrl): return "Position"; case (int)(PressureCtrlMode.TVPressureCtrl): return "Pressure"; case (int)(PressureCtrlMode.TVOpen): return "Open"; case (int)(PressureCtrlMode.TVClose): return "Close"; default: return "Undefined"; } } } public AITThrottleValveData() { DisplayName = "Undefined"; Factor = 1.0; UnitPosition = "%"; UnitPressure = "mTorr"; Type = "TV"; MaxValuePosition = 100; MaxValuePressure = 1000; } public void Update(IDeviceData data) { throw new NotImplementedException(); } } public enum AITThrottleValveOperation { SetMode, SetPosition, SetPressure, } public class AITThrottleValvePropertyName { public const string TVPositionSetPoint = "TVPositionSetPoint"; public const string TVPosition = "TVPosition"; public const string TVPressureSetPoint = "TVPressureSetPoint"; public const string TVPressure = "TVPressure"; } }