From 1fd49a571338b6c946bb05dcdf59ec1468df5c50 Mon Sep 17 00:00:00 2001 From: SWK <sungwk82@diteam.co.kr> Date: 목, 22 12월 2022 12:31:43 +0900 Subject: [PATCH] ongoing50 #4403 CF AOI Reveiw TACT 지연 개선 1. 일정 시간 유지 신호 처리 시 동기화로 인한 불합리 개선 - 일정 시간 유지 필요 시 스래드풀 작업큐를 이용하여 루프처리 방식으로 변경 - 유지 신호 처리 중 출력 신호 발생 시 작업큐에 등록하여 유지 신호와 결합하여 출력 처리 2. FDC 보고 항목 중 SW 버전 체크 루프 불합리 개선 - 프로그램 시작 시 연동 프로그램 버전 체크 간 실행되지 않는 프로그램이 있는 경우 무한 루프 발생 - 무한 루프로 인한 CPU 점유 상승->루프 중간 Sleep추가 및 코드 간소화 3. 로그 메시지에 시간 ms단위 추가(황만수SM 작업 내역 병합) --- 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