namespace OldWorldData.CommonData.DeviceData { [DataContract] [Serializable] public class AITAPCData { [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 { return ModeSetPoint switch { (int)(PressureControlMode.PositionControl) => "Valve Angle", (int)(PressureControlMode.Press1Control) => "Press1", (int)(PressureControlMode.Press2Control) => "Press2", (int)(PressureControlMode.Open) => "Full Open", (int)(PressureControlMode.Close) => "Full Close", (int)(PressureControlMode.SlowVacuum) => "Slow Vac", (int)(PressureControlMode.Hold) => "Hold", (int)(PressureControlMode.Homing) => "Homing", _ => "Idle", }; } } public string TextModeFeedback { get { return ModeFeedback switch { (int)(PressureControlMode.PositionControl) => "Valve Angle", (int)(PressureControlMode.Press1Control) => "Press1", (int)(PressureControlMode.Press2Control) => "Press2", (int)(PressureControlMode.Open) => "Full Open", (int)(PressureControlMode.Close) => "Full Close", (int)(PressureControlMode.SlowVacuum) => "Slow Vac", (int)(PressureControlMode.Hold) => "Hold", (int)(PressureControlMode.Homing) => "Homing", _ => "Idle", }; } } public AITAPCData() { DisplayName = "Undefined"; UnitPosition = "%"; UnitPressure = "mTorr"; Type = "TV"; MaxValuePosition = 100; MaxValuePressure = 1000; } public enum APCUnitEnum { Torr, Pa } public enum APCModeTypeEnum { [Description("APCCKD")] APCCKD, [Description("VAT+GV")] APCVATGV, [Description("Dual APC")] DUAL } } }