From d0d88aa27ad3221c64c76ced47371b114420cf91 Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 월, 15 11월 2021 10:06:01 +0900
Subject: [PATCH] Ongoing90 #3708 CF AOI Review 전설비 AFM 세팅 모드 기능 추가

---
 ReviewSystem/ReviewSystem/DlgHardwareSettingMode.cpp |   57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 56 insertions(+), 1 deletions(-)

diff --git a/ReviewSystem/ReviewSystem/DlgHardwareSettingMode.cpp b/ReviewSystem/ReviewSystem/DlgHardwareSettingMode.cpp
index c06e299..3bb2db8 100644
--- a/ReviewSystem/ReviewSystem/DlgHardwareSettingMode.cpp
+++ b/ReviewSystem/ReviewSystem/DlgHardwareSettingMode.cpp
@@ -14,7 +14,9 @@
 DlgHardwareSettingMode::DlgHardwareSettingMode(CWnd* pParent /*=nullptr*/)
 	: CDialogEx(IDD_DLG_HARDWARE_SETTING_MODE, pParent)
 {
-
+	b_ReviewCamconnectionstatus = TRUE;
+	b_AFCCamconnectionstatus = TRUE;
+	b_AlignCamCamconnectionstatus = TRUE;
 }
 
 DlgHardwareSettingMode::~DlgHardwareSettingMode()
@@ -98,6 +100,8 @@
 
 void DlgHardwareSettingMode::OnBnClickedButtonReviewCamConnect()
 {
+	if (m_pDHM2P->IDHM2P_IsManualProcessMode() == FALSE) return;
+
 	// TODO: �뿬湲곗뿉 而⑦듃濡� �븣由� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
 	if (m_pDHM2P->IDHM2P_InitReviewCamera())
 	{
@@ -105,16 +109,20 @@
 		m_ctrlReviewCamDisConnect.SetBackground(RGB(10, 10, 10));
 		m_ctrlReviewCamConnect.SetBackground(RGB(10, 255, 10));
 		g_pLog->DisplayMessage(_T("[HWSettingMode] ReviewCam Connect Success"));
+		b_ReviewCamconnectionstatus = TRUE;
 	}
 	else
 	{
 		g_pLog->DisplayMessage(_T("[HWSettingMode] ReviewCam Connect Fail!"));
+		b_ReviewCamconnectionstatus = FALSE;
 	}
 }
 
 
 void DlgHardwareSettingMode::OnBnClickedButtonReviewCamDisconnect()
 {
+	if (m_pDHM2P->IDHM2P_IsManualProcessMode() == FALSE) return;
+
 	// TODO: �뿬湲곗뿉 而⑦듃濡� �븣由� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
 	m_pDHM2P->IDHM2P_DisconnectReviewCamera();
 	m_pDHM2P->IDHM2P_DeinitReviewCamera();
@@ -122,56 +130,103 @@
 	m_ctrlReviewCamConnect.SetBackground(RGB(10, 10, 10));
 	m_ctrlReviewCamDisConnect.SetBackground(RGB(200, 0, 0));
 	g_pLog->DisplayMessage(_T("[HWSettingMode] ReviewCam DisConnect Success"));
+	b_ReviewCamconnectionstatus = FALSE;
 }
 
 
 void DlgHardwareSettingMode::OnBnClickedButtonAlignCamConnect()
 {
+	if (m_pDHM2P->IDHM2P_IsManualProcessMode() == FALSE) return;
+
 	// TODO: �뿬湲곗뿉 而⑦듃濡� �븣由� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
+
+	system("netsh interface set interface name = \"Align #1\" admin = disable"
+		"&& netsh interface set interface name = \"Align #1\" admin = enable"
+		"&& netsh interface set interface name = \"Align #2\" admin = disable"
+		"&& netsh interface set interface name = \"Align #2\" admin = enable");
+	Sleep(10000);
 	if (m_pDHM2P->IDHM2P_InitAlignCamera())
 	{
 		m_ctrlAlignCamDisConnect.SetBackground(RGB(10, 10, 10));
 		m_ctrlAlignCamConnect.SetBackground(RGB(10, 255, 10));
 		g_pLog->DisplayMessage(_T("[HWSettingMode] AlignCamera Connect Success"));
+		b_AlignCamCamconnectionstatus = TRUE;
 	}
 	else
 	{
 		g_pLog->DisplayMessage(_T("[HWSettingMode] AlignCamera Connect Fail!"));
+		b_AlignCamCamconnectionstatus = FALSE;
 	}
 }
 
 
 void DlgHardwareSettingMode::OnBnClickedButtonAlignCamDisconnect()
 {
+	if (m_pDHM2P->IDHM2P_IsManualProcessMode() == FALSE) return;
+
 	// TODO: �뿬湲곗뿉 而⑦듃濡� �븣由� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
 	m_pDHM2P->IDHM2P_DeinitAlignCamera();
 	m_ctrlAlignCamConnect.SetBackground(RGB(10, 10, 10));
 	m_ctrlAlignCamDisConnect.SetBackground(RGB(200, 0, 0));
 	g_pLog->DisplayMessage(_T("[HWSettingMode] AlignCamera DisConnect Success"));
+	b_AlignCamCamconnectionstatus = FALSE;
 }
 
 
 void DlgHardwareSettingMode::OnBnClickedButtonAfmConnect()
 {
+	if (m_pDHM2P->IDHM2P_IsManualProcessMode() == FALSE) return;
+
 	// TODO: �뿬湲곗뿉 而⑦듃濡� �븣由� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
 	if (m_pDHM2P->IDHM2P_InitAFMControl())
 	{
 		m_ctrlAFMDisConnect.SetBackground(RGB(10, 10, 10));
 		m_ctrlAFMConnect.SetBackground(RGB(10, 255, 10));
 		g_pLog->DisplayMessage(_T("[HWSettingMode] Afm Connect Success"));
+		b_AFCCamconnectionstatus = TRUE;
 	}
 	else
 	{
 		g_pLog->DisplayMessage(_T("[HWSettingMode] Afm Connect Fail!"));
+		b_AFCCamconnectionstatus = FALSE;
 	}
 }
 
 
 void DlgHardwareSettingMode::OnBnClickedButtonAfmDisconnect()
 {
+	if (m_pDHM2P->IDHM2P_IsManualProcessMode() == FALSE) return;
+
 	// TODO: �뿬湲곗뿉 而⑦듃濡� �븣由� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
 	m_pDHM2P->IDHM2P_DeinitAFMControl();
 	m_ctrlAFMConnect.SetBackground(RGB(10, 10, 10));
 	m_ctrlAFMDisConnect.SetBackground(RGB(200, 0, 0));
 	g_pLog->DisplayMessage(_T("[HWSettingMode] Afm DisConnect Success"));
+	b_AFCCamconnectionstatus = FALSE;
+}
+
+
+void DlgHardwareSettingMode::OnCancel()
+{
+	// TODO: �뿬湲곗뿉 �듅�닔�솕�맂 肄붾뱶瑜� 異붽� 諛�/�삉�뒗 湲곕낯 �겢�옒�뒪瑜� �샇異쒗빀�땲�떎.
+	if (b_AFCCamconnectionstatus && b_AlignCamCamconnectionstatus && b_ReviewCamconnectionstatus)
+	{
+		CDialogEx::OnCancel();
+	}
+
+	else IDOK == AfxMessageBox(_T("紐⑤뱺 H/W媛� �뿰寃� �긽�깭媛� �븘�땲硫� 李쎌쓣 �떕�쓣 �닔 �뾾�뒿�땲�떎.", MB_OK | MB_ICONQUESTION));
+	return;
+}
+
+
+void DlgHardwareSettingMode::OnOK()
+{
+	// TODO: �뿬湲곗뿉 �듅�닔�솕�맂 肄붾뱶瑜� 異붽� 諛�/�삉�뒗 湲곕낯 �겢�옒�뒪瑜� �샇異쒗빀�땲�떎.
+	if (b_AFCCamconnectionstatus && b_AlignCamCamconnectionstatus && b_ReviewCamconnectionstatus)
+	{
+		CDialogEx::OnOK();
+	}
+
+	else IDOK == AfxMessageBox(_T("紐⑤뱺 H/W媛� �뿰寃� �긽�깭媛� �븘�땲硫� 李쎌쓣 �떕�쓣 �닔 �뾾�뒿�땲�떎.", MB_OK | MB_ICONQUESTION));
+	return;
 }

--
Gitblit v1.9.3