using Aurora.Api;
using VisionCommon;
using System;
using System.Collections.Generic;
namespace VisionCommonUI {
public class CameraLightWindowManager {
private static Logger _Logger = new Logger(typeof(CameraLightWindowManager).Name);
#region 조명 윈도우
///
/// 특정 서브시스템 / 모든 카메라 - 모든 조명 윈도우들 띄우기
///
public static void ShowLightSettingWindows(SubSysInfo subSysInfo) {
try {
foreach (var fovInfo in VisionRecipeManager.GetFovInfos(subSysInfo)) {
var lightSettingWindow = new CameraLightSettingWindow(fovInfo);
lightSettingWindow?.Show();
}
}
catch (Exception e) {
_Logger.FuncE(e.Message);
}
}
///
/// 특정 서브시스템 / 특정 카메라 - 특정 조명 윈도우 띄우기
///
public static void ShowLightSettingWindow(FovInfo fovInfo) {
try {
var lightSettingWindow = new CameraLightSettingWindow(fovInfo);
lightSettingWindow?.Show();
}
catch (Exception e) {
_Logger.FuncE(e.Message);
}
}
///
/// 특정 서브시스템 / 모든 카메라 - 모든 조명 윈도우들 리턴
///
public static Dictionary GetLightSettingWindows(SubSysInfo subSysInfo) {
try {
var lightSettingWindows = new Dictionary(VisionRecipeManager.GetFovCnt(subSysInfo));
foreach (var fovInfo in VisionRecipeManager.GetFovInfos(subSysInfo)) {
lightSettingWindows.Add(fovInfo, new CameraLightSettingWindow(fovInfo));
}
return lightSettingWindows;
}
catch (Exception e) {
_Logger.FuncE(e.Message);
}
return null;
}
///
/// 특정 서브시스템 / 특정 카메라 - 특정 조명 윈도우 리턴
///
public static CameraLightSettingWindow GetLightSettingWindow(FovInfo fovInfo) {
try {
return new CameraLightSettingWindow(fovInfo);
}
catch (Exception e) {
_Logger.FuncE(e.Message);
}
return null;
}
#endregion
#region 조명 뷰
///
/// 특정 서브시스템 / 모든 카메라 - 모든 조명 뷰들 리턴
///
public static Dictionary GetLightSettingViews(SubSysInfo subSysInfo) {
try {
var lightSettingViews = new Dictionary(VisionRecipeManager.GetFovCnt(subSysInfo));
foreach (var fovInfo in VisionRecipeManager.GetFovInfos(subSysInfo)) {
lightSettingViews.Add(fovInfo, new CameraLightSettingView(fovInfo));
}
return lightSettingViews;
}
catch (Exception e) {
_Logger.FuncE(e.Message);
}
return null;
}
///
/// 특정 서브시스템 / 특정 카메라 - 조명 뷰 리턴
///
public static CameraLightSettingView GetLightSettingView(FovInfo fovInfo) {
try {
return new CameraLightSettingView(fovInfo);
}
catch (Exception e) {
_Logger.FuncE(e.Message);
}
return null;
}
#endregion
}
}