49 lines
1.4 KiB
C#
49 lines
1.4 KiB
C#
using Newtonsoft.Json;
|
|
using System;
|
|
|
|
namespace VisionCommon {
|
|
/// <summary>
|
|
/// 카메라 설정을 위한 Recipe
|
|
/// </summary>
|
|
public class CamRecipe : ICloneable {
|
|
/// <summary>
|
|
/// 카메라(HW) ID
|
|
/// </summary>
|
|
public eCamId CamId { get; set; } = eCamId.CAM1;
|
|
|
|
/// <summary>
|
|
/// 카메라(Aurora Device)의 CamId를 반환한다.
|
|
/// </summary>
|
|
/// <param name="deviceId">카메라의 Aurora Device ID</param>
|
|
/// <returns>CamId</returns>
|
|
public static eCamId GetCamIdFromDevId(string deviceId) {
|
|
foreach (eCamId camId in Enum.GetValues(typeof(eCamId))) {
|
|
if (camId.ToString().Equals(deviceId)) {
|
|
return camId;
|
|
}
|
|
}
|
|
return eCamId.None;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Clone (Deep Copy)
|
|
/// </summary>
|
|
/// <returns>CamRecipe</returns>
|
|
public object Clone() {
|
|
return new CamRecipe() {
|
|
CamId = this.CamId
|
|
};
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 하드웨어 카메라마다 고유하게 지정
|
|
/// </summary>
|
|
public enum eCamId {
|
|
None = -1,
|
|
CAM1, CAM2, CAM3, CAM4, CAM5, CAM6, CAM7, CAM8, CAM9, CAM10,
|
|
CAM11, CAM12, CAM13, CAM14, CAM15, CAM16, CAM17, CAM18, CAM19, CAM20,
|
|
CAM21, CAM22, CAM23, CAM24, CAM25, CAM26, CAM27, CAM28, CAM29, CAM30,
|
|
Max
|
|
}
|
|
} |