CameraInfo.cs 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. using log4net.Filter;
  2. using Prism.Mvvm;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Collections.ObjectModel;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using TeamAAS_VP.Enums;
  10. namespace TeamAAS_VP.Models
  11. {
  12. public class CameraInfo : BindableBase
  13. {
  14. private Guid _Id;
  15. public Guid Id
  16. {
  17. get { return _Id; }
  18. set { SetProperty(ref _Id, value); }
  19. }
  20. private int _CameraNo;
  21. /// <summary>
  22. /// 相机编号
  23. /// </summary>
  24. public int CameraNo
  25. {
  26. get { return _CameraNo; }
  27. set { SetProperty(ref _CameraNo, value); }
  28. }
  29. private string _CameraName;
  30. /// <summary>
  31. /// 相机名称
  32. /// </summary>
  33. public string CameraName
  34. {
  35. get { return _CameraName; }
  36. set { SetProperty(ref _CameraName, value); }
  37. }
  38. private string _Model;
  39. /// <summary>
  40. /// 相机型号
  41. /// </summary>
  42. public string Model
  43. {
  44. get { return _Model; }
  45. set { SetProperty(ref _Model, value); }
  46. }
  47. private string _SerialNumber;
  48. /// <summary>
  49. /// 相机序列号
  50. /// </summary>
  51. public string SerialNumber
  52. {
  53. get { return _SerialNumber; }
  54. set { SetProperty(ref _SerialNumber, value); }
  55. }
  56. private string _ManufacturerName;
  57. /// <summary>
  58. /// 厂商名
  59. /// </summary>
  60. public string ManufacturerName
  61. {
  62. get { return _ManufacturerName; }
  63. set { SetProperty(ref _ManufacturerName, value); }
  64. }
  65. private CameraType _CameraType;
  66. /// <summary>
  67. /// 相机类型
  68. /// </summary>
  69. public CameraType CameraType
  70. {
  71. get { return _CameraType; }
  72. set { SetProperty(ref _CameraType, value); }
  73. }
  74. private CameraBrand _CameraBrand;
  75. /// <summary>
  76. /// 相机品牌
  77. /// </summary>
  78. public CameraBrand CameraBrand
  79. {
  80. get { return _CameraBrand; }
  81. set { SetProperty(ref _CameraBrand, value); }
  82. }
  83. private string _CameraIp;
  84. /// <summary>
  85. /// 相机IP地址
  86. /// </summary>
  87. public string CameraIp
  88. {
  89. get { return _CameraIp; }
  90. set { SetProperty(ref _CameraIp, value); }
  91. }
  92. private bool _IsFindByIp;
  93. /// <summary>
  94. /// 是否按照IP查找相机
  95. /// </summary>
  96. public bool IsFindByIp
  97. {
  98. get { return _IsFindByIp; }
  99. set { SetProperty(ref _IsFindByIp, value); }
  100. }
  101. private ObservableCollection<DisplayConfig> _DisplatConfigs;
  102. /// <summary>
  103. /// 用于显示图像的配置集合
  104. /// </summary>
  105. public ObservableCollection<DisplayConfig> DisplatConfigs
  106. {
  107. get { return _DisplatConfigs; }
  108. set { SetProperty(ref _DisplatConfigs, value); }
  109. }
  110. public CameraInfo()
  111. {
  112. Id = Guid.NewGuid();
  113. }
  114. public CameraInfo(Guid id, string cameraName, CameraType cameraType, CameraBrand cameraBrand, string cameraIp)
  115. {
  116. Id = id;
  117. CameraName = cameraName;
  118. CameraType = cameraType;
  119. CameraBrand = cameraBrand;
  120. CameraIp = cameraIp;
  121. //如果相机的类型是GigE相机,则将IsFindByIp设为true
  122. if (cameraType == CameraType.GIGE)
  123. {
  124. IsFindByIp = true;
  125. }
  126. }
  127. public CameraInfo Copy()
  128. {
  129. return new CameraInfo
  130. {
  131. Id = this.Id,
  132. CameraName = this.CameraName,
  133. Model = this.Model,
  134. SerialNumber = this.SerialNumber,
  135. ManufacturerName = this.ManufacturerName,
  136. CameraType = this.CameraType,
  137. CameraBrand = this.CameraBrand,
  138. CameraIp = this.CameraIp
  139. };
  140. }
  141. }
  142. public class DisplayConfig : BindableBase
  143. {
  144. private Guid _Id;
  145. public Guid Id
  146. {
  147. get { return _Id; }
  148. set { SetProperty(ref _Id, value); }
  149. }
  150. private int _Number;
  151. public int Number
  152. {
  153. get { return _Number; }
  154. set { SetProperty(ref _Number, value); }
  155. }
  156. private string _DisplayName;
  157. public string DisplayName
  158. {
  159. get { return _DisplayName; }
  160. set { SetProperty(ref _DisplayName, value); }
  161. }
  162. public DisplayConfig()
  163. {
  164. }
  165. public DisplayConfig(int number, string name)
  166. {
  167. Number = number;
  168. DisplayName = name;
  169. Id= Guid.NewGuid();
  170. }
  171. public DisplayConfig Copy()
  172. {
  173. return new DisplayConfig
  174. {
  175. Id = this.Id,
  176. Number = this.Number,
  177. DisplayName = this.DisplayName,
  178. };
  179. }
  180. }
  181. }