using Aurora.View;
using System;
using VisionCommon;
namespace VisionInspector {
///
/// 패턴 간의 거리 검사 로그 아이템
///
public class PatternDistanceResultItem {
/// 검사 시간
public string Time { get; set; }
/// 시작 FOV
public eFovId StartFov { get; set; } = eFovId.None;
/// 끝 FOV
public eFovId EndFov { get; set; } = eFovId.None;
/// 거리 값
public double Distance { get; set; } = 0;
/// 에러 범위
public double ErrRange { get; set; } = 0;
/// 검사 결과 상태
public string InspStatus { get; set; } = VisionInspector.InspStatus.NONE.ToString();
}
///
/// 패턴 간의 거리 검사 결과 아이템 매니저
///
public class PatternDistanceResultItemManager : ItemManagerBase {
private static readonly object _Lock = new object();
///
/// 패턴 간의 거리 검사 결과를 로그 아이템으로 변환
///
///
/// 패턴 간의 거리 검사 결과 로그 아이템
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()
};
}
}
}
}