AITLidData.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Linq;
  5. using System.Reflection;
  6. using System.Runtime.Serialization;
  7. using System.Text;
  8. using System.Windows.Input;
  9. using Aitex.Core.RT.Device;
  10. using Aitex.Core.UI.MVVM;
  11. using MECF.Framework.Common.CommonData;
  12. using MECF.Framework.Common.Device.Bases;
  13. namespace Aitex.Core.Common.DeviceData
  14. {
  15. public enum LidState
  16. {
  17. Close = 0,
  18. Open = 1,
  19. Unknown = 2,
  20. Error = 3,
  21. }
  22. [DataContract]
  23. [Serializable]
  24. public class AITLidData : NotifiableItem, IDeviceData
  25. {
  26. /// <summary>
  27. /// 阀的唯一名称,UI与RT交互的ID
  28. /// </summary>
  29. [DataMember]
  30. public string DeviceName { get; set; }
  31. /// <summary>
  32. /// 显示在界面上的名称
  33. /// </summary>
  34. [DataMember]
  35. public string DisplayName { get; set; }
  36. /// <summary>
  37. /// IO 表中定义的物理编号,物理追溯使用 比如: V122
  38. /// </summary>
  39. [DataMember]
  40. public string DeviceSchematicId { get; set; }
  41. /// <summary>
  42. /// 当前设定值
  43. /// </summary>
  44. [DataMember]
  45. public int SetPoint { get; set; }
  46. /// <summary>
  47. /// 实际反馈值
  48. /// </summary>
  49. [DataMember]
  50. public int Status { get; set; }
  51. public bool IsOpen
  52. {
  53. get { return Status == (int)LidState.Open; }
  54. }
  55. public bool IsClose
  56. {
  57. get
  58. {
  59. return Status == (int)LidState.Close;
  60. }
  61. }
  62. public AITLidData()
  63. {
  64. DisplayName = "Undefined Lid";
  65. }
  66. public void Update(IDeviceData data)
  67. {
  68. }
  69. }
  70. public class AITLidOperation
  71. {
  72. public const string OpenLid = "OpenLid";
  73. public const string CloseLid = "CloseLid";
  74. }
  75. }