From 5e802e47375cb399b91f0abdc95420d6cce0b18b Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期六, 16 八月 2025 15:26:02 +0800
Subject: [PATCH] 1. 添加一个线程类,保存全图使用队列一个一个保存
---
EdgeInspector_App/View/ViewMain_HWSetting.cpp | 106 ++++++++++++++++++++++++++---------------------------
1 files changed, 52 insertions(+), 54 deletions(-)
diff --git a/EdgeInspector_App/View/ViewMain_HWSetting.cpp b/EdgeInspector_App/View/ViewMain_HWSetting.cpp
index cff989c..0e3206d 100644
--- a/EdgeInspector_App/View/ViewMain_HWSetting.cpp
+++ b/EdgeInspector_App/View/ViewMain_HWSetting.cpp
@@ -1,4 +1,4 @@
-// ViewHWSetting.cpp : 备泅 颇老涝聪促.
+锘�// ViewHWSetting.cpp : 澶囨硡 棰囪�佹稘鑱績.
//
#include "stdafx.h"
@@ -8,7 +8,7 @@
#include "Global_Define.h"
#include "NewCellTypes\GridCellCombo.h"
-// CViewHWSetting 措拳 惑磊涝聪促.
+// CViewHWSetting 鎺嫵 鎯戠娑濊仾淇�.
extern BOOL g_bUse_SaveAllDMP;
const int LIGHT_COLUMN_COUNT = 4;
const TCHAR* LIGHT_COLUMN_ITEM[LIGHT_COLUMN_COUNT] = {_T("ID"),_T("Type"),_T("Port&IP"),_T("Maker")};
@@ -65,10 +65,9 @@
DDX_Check(pDX,IDC_CHK_INS_REVERSE,m_pDlgHDSettingParm->m_bInsDirReverse);
DDX_Text(pDX, IDC_EDIT_PLC_SIGNAL_RETRY_COUNT, m_pDlgHDSettingParm->m_nPLCSignalRetry);
- DDX_Text(pDX, IDC_EDIT_SAVEIMAGE_QUALITY, m_pDlgHDSettingParm->m_nSaveImageQuality);
+ DDX_Text(pDX, IDC_EDIT_SAVEIMAGE_QUALITY, m_pDlgHDSettingParm->m_nSaveImageQuality);
+ DDX_Check(pDX, IDC_CHECK_USE_ASYNC_FULL_IMAGE_SAVE, m_pDlgHDSettingParm->m_bAsyncFullSave);
-
-
DDX_Text(pDX,IDC_EDIT_FOLDER_REMOVE_DAY,m_pDlgHDSettingParm->m_nFolderRemoveDay);
DDX_Check(pDX,IDC_CHK_USECOLORVISUAL,m_pDlgHDSettingParm->m_bUseColorVisual);
@@ -84,6 +83,8 @@
DDX_Check(pDX, IDC_CHECK_USE_SAVE_ALL_DMP, g_bUse_SaveAllDMP);
DDX_Check(pDX, IDC_CHECK_SAVE_RESULT_BY_HOUR, m_pDlgHDSettingParm->m_bSaveResultByHour); // ly,2025.07.10
+
+ DDX_Check(pDX, IDC_CHECK_USE_RIP_INSPECTION, m_pDlgHDSettingParm->m_bUseRipInspection); // ly,2025.08.14
DDX_Check(pDX, IDC_CHECK_ENABLE_AUTO_COPY, m_pDlgHDSettingParm->m_bEnableAutoCopy); // ly,2025.07.07
DDX_Text(pDX, IDC_EDIT_COPY_TOOL_EXE_PATH, m_pDlgHDSettingParm->m_strCopyToolExePath);
@@ -144,7 +145,7 @@
return TRUE;
}
-// CViewHWSetting 皋矫瘤 贸府扁涝聪促.
+// CViewHWSetting 鐨嬬煫鐦� 璐稿簻鎵佹稘鑱績.
void CViewMain_HWSetting::Init_LightGrid()
@@ -173,7 +174,7 @@
lf.lfItalic = 0;
lf.lfHeight = 14;
lf.lfWeight = FW_BOLD;
- _tcscpy(lf.lfFaceName, _T("Arial"));
+ _tcscpy_s(lf.lfFaceName, LF_FACESIZE, _T("Arial"));
m_LightGrid.GetDefaultCell(TRUE, FALSE)->SetFont(&lf);
m_LightGrid.GetDefaultCell(FALSE, TRUE)->SetFont(&lf);
@@ -230,7 +231,7 @@
lf.lfItalic = 0;
lf.lfHeight = 14;
lf.lfWeight = FW_BOLD;
- _tcscpy(lf.lfFaceName, _T("Arial"));
+ _tcscpy_s(lf.lfFaceName, LF_FACESIZE, _T("Arial"));
m_CameraGrid.GetDefaultCell(TRUE, FALSE)->SetFont(&lf);
m_CameraGrid.GetDefaultCell(FALSE, TRUE)->SetFont(&lf);
@@ -373,21 +374,27 @@
int iCam,iScan,i;
int iRow,iCol;
CString str;
- const TCHAR* SET_CAMERA_DIR[] = {_T("Top"),_T("Bottom")};
+ const TCHAR* SET_CAMERA_DIR[] = {_T("Top"),_T("Bottom"),_T("Side") };
const TCHAR* SET_INS_DIR[] = {_T("Long"),_T("Short")};
- const TCHAR* SET_INS_DIMENSION[] = {_T("A Top"),_T("B Top"),_T("C Top"),_T("D Top"),_T("A Bot"),_T("B Bot"),_T("C Bot"),_T("D Bot")};
+ const TCHAR* SET_INS_DIMENSION[] = {
+ _T("A Top"), _T("B Top"), _T("C Top"), _T("D Top"),
+ _T("A Bot"), _T("B Bot"), _T("C Bot"), _T("D Bot"),
+ _T("A RIP"), _T("B RIP"), _T("C RIP"), _T("D RIP")
+ };
+
CStringArray arrDir,arrInsDir,arrDimension;
CGridCellCombo *pCell;
- for(i=0;i<2;i++)
- {
- arrDir.Add(SET_CAMERA_DIR[i]);
- arrInsDir.Add(SET_INS_DIR[i]);
- }
- for(i=0;i<8;i++)
- {
- arrDimension.Add(SET_INS_DIMENSION[i]);
- }
+ for (i = 0; i < 3; i++) {
+ arrDir.Add(SET_CAMERA_DIR[i]);
+ }
+
+ for (i = 0; i < 2; i++) {
+ arrInsDir.Add(SET_INS_DIR[i]);
+ }
+ for (i = 0; i < 12; i++) {
+ arrDimension.Add(SET_INS_DIMENSION[i]);
+ }
if(bWrite == TRUE)
{
@@ -417,7 +424,8 @@
switch(pCamera->m_enCamDir)
{
case CAMDIR_TOP: str.Format(_T("%s"),SET_CAMERA_DIR[0]); break;
- case CAMDIR_BOTTOM: str.Format(_T("%s"),SET_CAMERA_DIR[1]); break;
+ case CAMDIR_BOTTOM: str.Format(_T("%s"),SET_CAMERA_DIR[1]); break;
+ case CAMDIR_SIDE: str.Format(_T("%s"), SET_CAMERA_DIR[2]); break;
default: str.Format(_T("%s"),_T("No")); break;
}
m_CameraGrid.SetItemText(iRow,iCol,str);
@@ -447,13 +455,17 @@
switch(pCamera->m_eDimension)
{
case DIMENSION_A: str.Format(_T("%s"),SET_INS_DIMENSION[0]); break;
- case DIMENSION_B: str.Format(_T("%s"),SET_INS_DIMENSION[1]); break;
- case DIMENSION_C: str.Format(_T("%s"),SET_INS_DIMENSION[2]); break;
- case DIMENSION_D: str.Format(_T("%s"),SET_INS_DIMENSION[3]); break;
- case DIMENSION_A_DN: str.Format(_T("%s"),SET_INS_DIMENSION[4]); break;
- case DIMENSION_B_DN: str.Format(_T("%s"),SET_INS_DIMENSION[5]); break;
- case DIMENSION_C_DN: str.Format(_T("%s"),SET_INS_DIMENSION[6]); break;
- case DIMENSION_D_DN: str.Format(_T("%s"),SET_INS_DIMENSION[7]); break;
+ case DIMENSION_B: str.Format(_T("%s"),SET_INS_DIMENSION[1]); break;
+ case DIMENSION_C: str.Format(_T("%s"),SET_INS_DIMENSION[2]); break;
+ case DIMENSION_D: str.Format(_T("%s"),SET_INS_DIMENSION[3]); break;
+ case DIMENSION_A_DN: str.Format(_T("%s"),SET_INS_DIMENSION[4]); break;
+ case DIMENSION_B_DN: str.Format(_T("%s"),SET_INS_DIMENSION[5]); break;
+ case DIMENSION_C_DN: str.Format(_T("%s"),SET_INS_DIMENSION[6]); break;
+ case DIMENSION_D_DN: str.Format(_T("%s"),SET_INS_DIMENSION[7]); break;
+ case DIMENSION_A_RIP: str.Format(_T("%s"), SET_INS_DIMENSION[8]); break;
+ case DIMENSION_B_RIP: str.Format(_T("%s"), SET_INS_DIMENSION[9]); break;
+ case DIMENSION_C_RIP: str.Format(_T("%s"), SET_INS_DIMENSION[10]); break;
+ case DIMENSION_D_RIP: str.Format(_T("%s"), SET_INS_DIMENSION[11]); break;
default: str.Format(_T("%s"),_T("No")); break;
}
m_CameraGrid.SetItemText(iRow,iCol,str);
@@ -660,23 +672,19 @@
void CViewMain_HWSetting::UpdateControlValue(BOOL bWrite)
{
- if(bWrite == TRUE)
- {
+ if(bWrite == TRUE) {
UpdateData(FALSE);
FillLightGrid(TRUE);
FillCameraGrid(TRUE);
((CComboBox*)(GetDlgItem(IDC_COMBO_BORAD_TYPE)))->SetCurSel((int)m_pDlgHDSettingParm->m_nBoardType);
}
- else
- {
+ else {
UpdateData(TRUE);
FillLightGrid(FALSE);
FillCameraGrid(FALSE);
- if(m_pHDSetting != NULL)
- {
+ if(m_pHDSetting != NULL) {
m_pDlgHDSettingParm->m_nBoardType = (BOARD_TYPE)((CComboBox*)(GetDlgItem(IDC_COMBO_BORAD_TYPE)))->GetCurSel();
-
*m_pHDSetting = *m_pDlgHDSettingParm;
}
}
@@ -712,40 +720,30 @@
CreateDirectory(_T("C:\\EdgeInspector_App\\Config"),NULL);
CreateDirectory(_T("C:\\EdgeInspector_App\\Config\\Backup"),NULL);
- CTime currentTime = CTime::GetCurrentTime();
-
CString str;
-
- str.Format(_T("%s\\HardwareSetting_%02d%02d%02d_%02d%02d%02d.cfg"), HARDWARE_SETTING_BACKUP_DIR_PATH
- , currentTime.GetYear()
- , currentTime.GetMonth()
- , currentTime.GetDay()
- , currentTime.GetHour()
- , currentTime.GetMinute()
- , currentTime.GetSecond());
+ CTime time = CTime::GetCurrentTime();
+ str.Format(_T("%s\\HardwareSetting_%02d%02d%02d_%02d%02d%02d.cfg"), HARDWARE_SETTING_BACKUP_DIR_PATH, time.GetYear(), time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond());
UpdateControlValue(FALSE);
- if(m_pHDSetting->WriteHardwareSettingsFile(str) == FALSE)
- {
+ if(m_pHDSetting->WriteHardwareSettingsFile(str) == FALSE) {
AfxMessageBox(_T("Save Fail!"));
}
}
void CViewMain_HWSetting::ClickHWSaveButton()
{
- if(m_pHDSetting == NULL)
+ if (m_pHDSetting == NULL) {
return;
+ }
- if (IDYES == AfxMessageBox(_T("Do you want to save? \n Restarting is required to change settings."), MB_YESNO | MB_ICONQUESTION))
- {
+ if (IDYES == AfxMessageBox(_T("Do you want to save? \n Restarting is required to change settings."), MB_YESNO | MB_ICONQUESTION)) {
UpdateControlValue(FALSE);
-
- if(m_pHDSetting->WriteHardwareSettingsFile(HARDWARE_SETTING_PATH) == FALSE)// if(m_pHDSetting->WriteHardwareSettingsRegistry() == FALSE)
- {
- AfxMessageBox(_T("Save Fail!"));
+ g_pLog->DisplayMessage(_T("Saving HW settings file[%s]..."), HARDWARE_SETTING_PATH);
+ if (m_pHDSetting->WriteHardwareSettingsFile(HARDWARE_SETTING_PATH) == FALSE) {
+ g_pLog->DisplayMessage(_T("Failed to save hardware settings file!"));
return;
}
- SaveHardwareFileBackup();
+ SaveHardwareFileBackup();
}
}
--
Gitblit v1.9.3