From 4fb0f6c9b7b0fdfc6cc52c9bf1153d87f92651ca Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期四, 14 八月 2025 11:52:50 +0800
Subject: [PATCH] 1. 修复RIP新增配方闪退的问题 2. 完善RIP结果绘画在视图窗口
---
EdgeInspector_App/Grabber/SapControl.cpp | 39 ++++++++++++++++++++-------------------
1 files changed, 20 insertions(+), 19 deletions(-)
diff --git a/EdgeInspector_App/Grabber/SapControl.cpp b/EdgeInspector_App/Grabber/SapControl.cpp
index 67454b6..bb613e8 100644
--- a/EdgeInspector_App/Grabber/SapControl.cpp
+++ b/EdgeInspector_App/Grabber/SapControl.cpp
@@ -1,4 +1,4 @@
-#include "StdAfx.h"
+锘�#include "StdAfx.h"
#include "SapControl.h"
#define FRAME_HEAD_MARKER 0x55AAFF00
@@ -108,7 +108,7 @@
BOOL CSapControl::CreateXfer()
{
- // Xfer勤甸 积己
+ // Xfer鍕ょ敻 绉繁
if (DisplayStatus("CorXferNew", CorXferNew(m_hBoard, m_hAcq, *m_hBuffer, NULL, &m_hXfer)))
return FALSE;
@@ -120,13 +120,13 @@
xfer_desc.incByte = m_Param.nFrameWidth;
#ifdef FRAME_CALLBACK
- // 妮归 窃荐 殿废
+ // 濡綊 绐冭崘 娈垮簾
if (DisplayStatus("CorXferRegisterCallback"
, CorXferRegisterCallback(m_hXfer
, CORXFER_VAL_EVENT_TYPE_END_OF_FRAME
, XferCallback, (void*)this)))
#else
- // 妮归 窃荐 殿废
+ // 濡綊 绐冭崘 娈垮簾
if (DisplayStatus("CorXferRegisterCallback"
, CorXferRegisterCallback(m_hXfer
, CORXFER_VAL_EVENT_TYPE_END_OF_NLINES + m_Param.nFrameHeight
@@ -139,7 +139,7 @@
if (DisplayStatus("CorXferAppend", CorXferAppend(m_hXfer, m_hAcq, m_hBuffer[i], NULL)))
return FALSE;
- // 妮归 窃荐 殿废
+ // 濡綊 绐冭崘 娈垮簾
if (DisplayStatus("CorXferRegisterCallback"
, CorXferRegisterCallback(m_hXfer
, CORXFER_VAL_EVENT_TYPE_END_OF_FRAME
@@ -164,7 +164,7 @@
return FALSE;
//////////////////////////////////////////////////////////////////////////
- // Buffer 且寸
+ // Buffer 涓斿
CORSTATUS st;
int i;
SIZE_T tempBufferSize= m_Param.nGrabBufSize;
@@ -181,7 +181,7 @@
for (i = 0; i <nBufferrCount; i++)
{
- // Memory Address 且寸.
+ // Memory Address 涓斿.
m_pX64Buffer[i] = (void*)(m_pOneLargeBuffer+ nBufferSize*i);
if (m_pX64Buffer[i])
{
@@ -241,7 +241,7 @@
if (DisplayStatus("CorAcqSetPrms", CorAcqSetPrms(m_hAcq, m_hVic, m_hCam, TRUE)))
return FALSE;
- // 荐笼且 康惑狼 农扁 眠免
+ // 鑽愮涓� 搴锋儜鐙� 鍐滄墎 鐪犲厤
// if (DisplayStatus("CorAcqGetPrm", CorAcqGetPrm(m_hAcq, CORACQ_PRM_SCALE_HORZ, &g_pBase->m_nFrameWidth)))
// return FALSE;
@@ -480,7 +480,7 @@
if(bFreeRun == FALSE)
{
- // 悼扁 康惑犬焊 版快
+ // 鎮兼墎 搴锋儜鐘剨 鐗堝揩
if( DisplayStatus( "CorAcqSetPrm", CorAcqSetPrm(m_hAcq, CORACQ_PRM_EXT_FRAME_TRIGGER_ENABLE, TRUE)))
return FALSE;
@@ -518,7 +518,7 @@
{
g_pLog->DisplayMessage(L"StopAcq : Grab %d, End %d", m_nSetBufferIdx, m_nEndFrameIdx);
- //20141022 yjm abort 肺 窍搁 促澜 弊乏矫 磊操焊靛啊 桓绢滚赴促. 犁何泼父 烹窃..揪广 俺绊积ぱぱせ
+ //20141022 yjm abort 鑲� 绐嶆悂 淇冩緶 寮婁箯鐭� 纾婃搷鐒婇潧鍟� 妗撶虎婊氳荡淇�. 鐘佷綍娉肩埗 鐑圭獌..鎻箍 淇虹粖绉伇銇便仜
if (DisplayStatus("CorXferStop", CorXferStop(m_hXfer)))//if (DisplayStatus("CorXferStop", CorXferAbort(m_hXfer)))
{
g_pLog->DisplayMessage(L"CorXferAbort Fail. Grab %d, End %d", m_nSetBufferIdx, m_nEndFrameIdx);
@@ -587,7 +587,7 @@
if (nYStart + nYSize > nBufSizeY* GetEndFrameIdx())
return FALSE;
- // 矫累 橇饭烙 锅龋客 场 橇饭烙 锅龋.
+ // 鐭疮 姗囬キ鐑� 閿呴緥瀹� 鍦� 姗囬キ鐑� 閿呴緥.
int nStartFrameNo = nYStart / nBufSizeY;
int nEndFrameNo = (nYStart + nYSize) / nBufSizeY;
LPBYTE lpHeadAddr = GetFrameHeader(iScan,nStartFrameNo);
@@ -603,7 +603,7 @@
memcpy(lpIn + i * nXSize, lpStart + nLine * nBufSizeX, nXSize);
if (nStartFrameNo <= nEndFrameNo && (nYStart + i + 1) % nBufSizeY == 0)
{
- // 捞固瘤甫 蝶郴具窍绰 康开捞 MemFrameNo 版拌俊 吧媚乐绰 版快 贸府.
+ // 鎹炲浐鐦ょ敨 铦堕兇鍏风獚缁� 搴峰紑鎹� MemFrameNo 鐗堟媽淇� 鍚у獨涔愮话 鐗堝揩 璐稿簻.
lpHeadAddr = GetFrameHeader(iScan,++nStartFrameNo);
lpStart = lpHeadAddr + nXStart;
nLine = 0;
@@ -726,7 +726,7 @@
{
LPBYTE lpBuffer = NULL;
- // 捞固瘤甫 嘛篮 利捞 绝绰 版快绰 滚欺甫 府畔茄促.
+ // 鎹炲浐鐦ょ敨 鍢涚 鍒╂崬 缁濈话 鐗堝揩缁� 婊氭鐢� 搴滅晹鑼勪績.
if (m_nStartFrameIdx == 0 && m_nEndFrameIdx == 0)
{
if (nFrameNo >= 0 && nFrameNo < g_pBase->m_pMemFrameNo[m_Param.nCameraIdx])
@@ -738,7 +738,7 @@
else
lpBuffer = NULL;
}
- else // 捞固瘤甫 嘛篮 版快绰 Frame No甫 犬牢窍咯 滚欺甫 府畔茄促.
+ else // 鎹炲浐鐦ょ敨 鍢涚 鐗堝揩缁� Frame No鐢� 鐘墷绐嶅挴 婊氭鐢� 搴滅晹鑼勪績.
{
if (nFrameNo >= m_nStartFrameIdx && nFrameNo < m_nEndFrameIdx)
{
@@ -761,18 +761,19 @@
pX64->m_nEndFrameIdx++; //Count
pX64->m_nSetBufferIdx++; //index
- if (pX64->m_nEndFrameIdx > g_pStatus->GetGrabFrameCount(pX64->m_nScanIndex))
+ int nCameraIdx = pX64->m_Param.nCameraIdx;
+ if (pX64->m_nEndFrameIdx > g_pStatus->GetGrabFrameCount(nCameraIdx, pX64->m_nScanIndex))
{
pX64->GrabScanStop();
- g_pStatus->SetGrabEnd(pX64->m_nScanIndex);
- g_pLog->DisplayMessage(_T("%d Over Grab Count : Stop Grab[%d][%d] - %d"), pX64->m_Param.nBoardIdx, pX64->m_nScanIndex, pX64->m_nEndFrameIdx,g_pStatus->GetGrabFrameCount(pX64->m_nScanIndex));
+ g_pStatus->SetGrabEnd(nCameraIdx, pX64->m_nScanIndex);
+ g_pLog->DisplayMessage(_T("%d Over Grab Count : Stop Grab[%d][%d] - %d"), pX64->m_Param.nBoardIdx, pX64->m_nScanIndex, pX64->m_nEndFrameIdx,g_pStatus->GetGrabFrameCount(nCameraIdx, pX64->m_nScanIndex));
return TRUE;
}
if (pX64->m_nSetBufferIdx > pX64->m_pFrameBuffer->GetFrameCount())
{
pX64->GrabScanStop();
- g_pStatus->SetGrabEnd(pX64->m_nScanIndex);
+ g_pStatus->SetGrabEnd(nCameraIdx, pX64->m_nScanIndex);
g_pLog->DisplayMessage(_T("%d Over Grab Buffer Stop Grab[%d][%d] - %d"), pX64->m_Param.nBoardIdx, pX64->m_nScanIndex, pX64->m_nEndFrameIdx,pX64->m_pFrameBuffer->GetFrameCount());
return TRUE;
}
@@ -781,7 +782,7 @@
if(pBuffer == NULL)
{
pX64->GrabScanStop();
- g_pStatus->SetGrabEnd(pX64->m_nScanIndex);
+ g_pStatus->SetGrabEnd(nCameraIdx, pX64->m_nScanIndex);
g_pLog->DisplayMessage(_T("%d Over Grab Buffer Stop Grab[%d][%d] - %d"), pX64->m_Param.nBoardIdx, pX64->m_nScanIndex, pX64->m_nEndFrameIdx,pX64->m_pFrameBuffer->GetFrameCount());
return TRUE;
}
--
Gitblit v1.9.3