CameraInfo.cs 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. using LampInspectionMachine.Cameralibs;
  2. using Prism.Mvvm;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace LampInspectionMachine.Model
  9. {
  10. public class CameraInfo : BindableBase
  11. {
  12. private Guid _Id;
  13. public Guid Id
  14. {
  15. get { return _Id; }
  16. set { SetProperty(ref _Id, value); }
  17. }
  18. private string _SerialNumber;
  19. /// <summary>
  20. /// 相机序列号
  21. /// </summary>
  22. public string SerialNumber
  23. {
  24. get { return _SerialNumber; }
  25. set { SetProperty(ref _SerialNumber, value); }
  26. }
  27. private bool triggerMode;
  28. private TriggerSource triggeSource;
  29. private TriggerPolarity triggerPolarity;
  30. private ulong expouseTime;
  31. private ushort triggerFilter;
  32. private ushort triggerDelay;
  33. private float gain;
  34. private string _VppFileName;
  35. private int _VppIndex=0;
  36. public bool TriggerMode { get => triggerMode; set { SetProperty(ref triggerMode, value); } }
  37. public TriggerSource TriggeSource { get => triggeSource; set { SetProperty(ref triggeSource, value); } }
  38. public TriggerPolarity TriggerPolarity { get => triggerPolarity; set { SetProperty(ref triggerPolarity, value); } }
  39. public ulong ExpouseTime { get => expouseTime; set { SetProperty(ref expouseTime, value); } }
  40. public ushort TriggerFilter { get => triggerFilter; set { SetProperty(ref triggerFilter, value); } }
  41. public ushort TriggerDelay { get => triggerDelay; set { SetProperty(ref triggerDelay, value); } }
  42. public float Gain { get => gain; set { SetProperty(ref gain, value); } }
  43. public string VppFileName { get => _VppFileName; set { SetProperty(ref _VppFileName, value); } }
  44. public int VppIndex { get => _VppIndex; set { SetProperty(ref _VppIndex, value); } }
  45. private string _CameraName;
  46. /// <summary>
  47. /// 相机名称
  48. /// </summary>
  49. public string CameraName
  50. {
  51. get { return _CameraName; }
  52. set { SetProperty(ref _CameraName, value); }
  53. }
  54. private string _Model;
  55. /// <summary>
  56. /// 相机型号
  57. /// </summary>
  58. public string Model
  59. {
  60. get { return _Model; }
  61. set { SetProperty(ref _Model, value); }
  62. }
  63. private string _ManufacturerName;
  64. /// <summary>
  65. /// 厂商名
  66. /// </summary>
  67. public string ManufacturerName
  68. {
  69. get { return _ManufacturerName; }
  70. set { SetProperty(ref _ManufacturerName, value); }
  71. }
  72. private CameraType _CameraType;
  73. /// <summary>
  74. /// 相机类型
  75. /// </summary>
  76. public CameraType CameraType
  77. {
  78. get { return _CameraType; }
  79. set { SetProperty(ref _CameraType, value); }
  80. }
  81. private CameraBrand _CameraBrand;
  82. /// <summary>
  83. /// 相机品牌
  84. /// </summary>
  85. public CameraBrand CameraBrand
  86. {
  87. get { return _CameraBrand; }
  88. set { SetProperty(ref _CameraBrand, value); }
  89. }
  90. private string _CameraIp;
  91. public string CameraIp
  92. {
  93. get { return _CameraIp; }
  94. set { SetProperty(ref _CameraIp, value); }
  95. }
  96. public CameraInfo Copy()
  97. {
  98. return new CameraInfo()
  99. {
  100. ExpouseTime = ExpouseTime,
  101. Gain = Gain,
  102. TriggerDelay = TriggerDelay,
  103. TriggerFilter = TriggerFilter,
  104. TriggerPolarity = TriggerPolarity,
  105. TriggeSource = TriggeSource,
  106. VppFileName = VppFileName,
  107. TriggerMode = TriggerMode,
  108. CameraName = this.CameraName,
  109. Model = this.Model,
  110. SerialNumber = this.SerialNumber,
  111. ManufacturerName = this.ManufacturerName,
  112. CameraType = this.CameraType,
  113. CameraBrand = this.CameraBrand,
  114. CameraIp = this.CameraIp,
  115. VppIndex = this.VppIndex,
  116. };
  117. }
  118. }
  119. }