using Aurora.Api;
using VisionCommon;
namespace VisionInspector {
///
/// 부착검사 결과
///
public class AttachInspResult {
/// 디스플레이 타입
public eDisplayType DisplayType { get; set; } = eDisplayType.Main_1;
/// FOV ID
public eFovId FovId { get; set; }
/// 수평(Width) 측정 결과
public double MeasureW { get; set; }
/// 수평(Width) 스펙
public double SpecW { get; set; }
/// 수평(Width) 에러
public double ErrW { get; set; }
/// 수직(Height) 측정 결과
public double MeasureH { get; set; }
/// 수직(Height) 스펙
public double SpecH { get; set; }
/// 수직(Height) 에러
public double ErrH { get; set; }
/// 검사 결과 상태
public InspStatus InspStatus { get; set; } = InspStatus.NONE;
///
/// 생성자
///
public AttachInspResult() {
}
///
/// 생성자
///
/// 디스플레이 타입
/// FOV ID
/// 수평(Width) 측정 결과
/// 수평(Width) 스펙
/// 수직(Height) 측정 결과
/// 수직(Height) 스펙
/// 검사 결과 상태
public AttachInspResult(
eDisplayType displayType,
eFovId fovId,
double measureW, double specW,
double measureH, double specH,
InspStatus inspStatus) {
this.DisplayType = displayType;
this.FovId = fovId;
this.MeasureW = measureW;
this.SpecW = specW;
this.ErrW = MeasureW - SpecW;
this.MeasureH = measureH;
this.SpecH = specH;
this.ErrH = MeasureH - SpecH;
this.InspStatus = inspStatus;
}
///
/// 복제(Deep Copy)
///
/// 복제된 부착검사 결과
public AttachInspResult Clone() {
return new AttachInspResult() {
DisplayType = this.DisplayType,
FovId = this.FovId,
MeasureW = this.MeasureW,
SpecW = this.SpecW,
ErrW = this.ErrW,
MeasureH = this.MeasureH,
SpecH = this.SpecH,
ErrH = this.ErrH,
InspStatus = this.InspStatus,
};
}
}
}