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 ++++++++++++++++++++++++++++ ReviewSystem/ReviewSystem/ReviewInterface.h | 4 ++ ReviewSystem/ReviewSystem/DlgHardwareSettingMode.h | 8 ++++ ReviewSystem/ReviewSystem/DlgLogo.h | 2 + ReviewSystem/ReviewSystem/ReviewInterface.cpp | 10 +++++ ReviewSystem/ReviewSystem/DlgLogo.cpp | 2 + 6 files changed, 82 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; } diff --git a/ReviewSystem/ReviewSystem/DlgHardwareSettingMode.h b/ReviewSystem/ReviewSystem/DlgHardwareSettingMode.h index 5ba8f84..43255b6 100644 --- a/ReviewSystem/ReviewSystem/DlgHardwareSettingMode.h +++ b/ReviewSystem/ReviewSystem/DlgHardwareSettingMode.h @@ -20,6 +20,9 @@ virtual int IDHM2P_InitAlignCamera() = 0; virtual void IDHM2P_DeinitAlignCamera() = 0; + //is manual Mode? + virtual BOOL IDHM2P_IsManualProcessMode() = 0; + }; // DlgHardwareSettingMode ���솕 �긽�옄 @@ -62,4 +65,9 @@ CFontStatic m_ctrlAlignCamDisConnect; CFontStatic m_ctrlAFMConnect; CFontStatic m_ctrlAFMDisConnect; + BOOL b_ReviewCamconnectionstatus; + BOOL b_AFCCamconnectionstatus; + BOOL b_AlignCamCamconnectionstatus; + virtual void OnCancel(); + virtual void OnOK(); }; diff --git a/ReviewSystem/ReviewSystem/DlgLogo.cpp b/ReviewSystem/ReviewSystem/DlgLogo.cpp index 0efb761..299813c 100644 --- a/ReviewSystem/ReviewSystem/DlgLogo.cpp +++ b/ReviewSystem/ReviewSystem/DlgLogo.cpp @@ -303,6 +303,8 @@ void CDlgLogo::OnBnClickedButtonHwSettingMode() { + if (m_pDL2P->IDL2P_IsManualProcessMode() == FALSE) return; + m_pDL2P->IDL2P_OpenHWSettingTool(); g_pLog->DisplayMessage(_T("[ReviewProcessor] HW SettingMode Start")); // TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다. diff --git a/ReviewSystem/ReviewSystem/DlgLogo.h b/ReviewSystem/ReviewSystem/DlgLogo.h index b141036..2673230 100644 --- a/ReviewSystem/ReviewSystem/DlgLogo.h +++ b/ReviewSystem/ReviewSystem/DlgLogo.h @@ -12,6 +12,8 @@ /*< LYW 20211112 - #3708 ADD Start >*/ virtual void IDL2P_OpenHWSettingTool() = 0; /*< LYW 20211112 - #3708 ADD End >*/ + //is manual Mode? + virtual BOOL IDL2P_IsManualProcessMode() = 0; }; interface diff --git a/ReviewSystem/ReviewSystem/ReviewInterface.cpp b/ReviewSystem/ReviewSystem/ReviewInterface.cpp index 369a290..c5a29d6 100644 --- a/ReviewSystem/ReviewSystem/ReviewInterface.cpp +++ b/ReviewSystem/ReviewSystem/ReviewInterface.cpp @@ -8624,6 +8624,11 @@ m_pView->ShowHWSettingMode(); } +BOOL CReviewInterface::IDL2P_IsManualProcessMode() +{ + return IsManualProcessMode(); +} + int CReviewInterface::IDHM2P_InitReviewCamera() { return InitReviewCamera(); @@ -8669,6 +8674,11 @@ DeinitAlignCamera(); } +BOOL CReviewInterface::IDHM2P_IsManualProcessMode() +{ + return IsManualProcessMode(); +} + //181203 BOOL CReviewInterface::IRP2P_SaveDefectMap(const CString& strPath) { diff --git a/ReviewSystem/ReviewSystem/ReviewInterface.h b/ReviewSystem/ReviewSystem/ReviewInterface.h index 68d13a0..8323476 100644 --- a/ReviewSystem/ReviewSystem/ReviewInterface.h +++ b/ReviewSystem/ReviewSystem/ReviewInterface.h @@ -520,6 +520,7 @@ virtual void IDL2P_OpenHistoryTool(); /*< LYW 20211112 - #3708 ADD Start >*/ virtual void IDL2P_OpenHWSettingTool(); + virtual BOOL IDL2P_IsManualProcessMode(); /*< LYW 20211112 - #3708 ADD End >*/ // dialog HardwareSettingMode 2 Parent @@ -538,6 +539,9 @@ virtual int IDHM2P_InitAlignCamera(); virtual void IDHM2P_DeinitAlignCamera(); + // is manual Mode? + virtual BOOL IDHM2P_IsManualProcessMode(); + protected: // Motor Control command BOOL Motor_ReadAddress(long nAddress, double &dValue); -- Gitblit v1.9.3