2026-03-30 17:09:29 +09:00

49 lines
2.0 KiB
C#

using Aurora.View;
using System;
using VisionCommon;
namespace VisionInspector {
/// <summary>
/// 패턴 간의 거리 검사 로그 아이템
/// </summary>
public class PatternDistanceResultItem {
/// <summary>검사 시간</summary>
public string Time { get; set; }
/// <summary>시작 FOV</summary>
public eFovId StartFov { get; set; } = eFovId.None;
/// <summary>끝 FOV</summary>
public eFovId EndFov { get; set; } = eFovId.None;
/// <summary>거리 값</summary>
public double Distance { get; set; } = 0;
/// <summary>에러 범위</summary>
public double ErrRange { get; set; } = 0;
/// <summary>검사 결과 상태</summary>
public string InspStatus { get; set; } = VisionInspector.InspStatus.NONE.ToString();
}
/// <summary>
/// 패턴 간의 거리 검사 결과 아이템 매니저
/// </summary>
public class PatternDistanceResultItemManager : ItemManagerBase {
private static readonly object _Lock = new object();
/// <summary>
/// 패턴 간의 거리 검사 결과를 로그 아이템으로 변환
/// </summary>
/// <param name="attachInspResult"></param>
/// <returns>패턴 간의 거리 검사 결과 로그 아이템</returns>
public static PatternDistanceResultItem GetPatternDistanceResultItem(SubSysInfo subSysInfo, PatternDistanceResult patternDistanceResult) {
lock (_Lock) {
return new PatternDistanceResultItem() {
Time = GetTimeStamp(subSysInfo, patternDistanceResult),
StartFov = patternDistanceResult.StartFov,
EndFov = patternDistanceResult.EndFov,
Distance = patternDistanceResult.Distance,
ErrRange = patternDistanceResult.ErrRange,
InspStatus = patternDistanceResult.InspStatus.ToString()
};
}
}
}
}