From ab78aac9f9c758014f74b9ec699d3ed2ae76b914 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期六, 24 五月 2025 17:31:33 +0800
Subject: [PATCH] test2
---
SourceCode/Bond/Servo/CJobDataS.cpp | 46 ++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 44 insertions(+), 2 deletions(-)
diff --git a/SourceCode/Bond/Servo/CJobDataS.cpp b/SourceCode/Bond/Servo/CJobDataS.cpp
index 0c9de03..9351215 100644
--- a/SourceCode/Bond/Servo/CJobDataS.cpp
+++ b/SourceCode/Bond/Servo/CJobDataS.cpp
@@ -36,12 +36,54 @@
}
}
+ CJobDataS::CJobDataS(CJobDataS&& other) noexcept
+ {
+ copy(&other);
+ m_pRawData = other.m_pRawData; // 偷资源
+ other.m_pRawData = nullptr; // 防止释放两次
+ }
+
CJobDataS::~CJobDataS()
{
if (m_pRawData != nullptr) {
delete[] m_pRawData;
m_pRawData = nullptr;
}
+ }
+
+ void CJobDataS::copy(CJobDataS* pScr)
+ {
+ m_nCassetteSequenceNo = pScr->m_nCassetteSequenceNo;
+ m_nJobSequenceNo = pScr->m_nJobSequenceNo;
+ m_strLotId = pScr->m_strLotId;
+ m_strProductId = pScr->m_strProductId;
+ m_strOperationId = pScr->m_strOperationId;
+ m_strGlass1Id = pScr->m_strGlass1Id;
+ m_strGlass2Id = pScr->m_strGlass2Id;
+ m_nJobType = pScr->m_nJobType;
+ m_nMaterialsType = pScr->m_nMaterialsType;
+ m_nProductType = pScr->m_nProductType;
+ m_nDummyType = pScr->m_nDummyType;
+ m_nSkipFlag = pScr->m_nSkipFlag;
+ m_nProcessFlag = pScr->m_nProcessFlag;
+ m_nProcessResonCode = pScr->m_nProcessResonCode;
+ m_nLastGlassFlag = pScr->m_nLastGlassFlag;
+ m_nFirstGlassFlag = pScr->m_nFirstGlassFlag;
+ m_nQTime[0] = pScr->m_nQTime[0];
+ m_nQTime[1] = pScr->m_nQTime[1];
+ m_nQTime[2] = pScr->m_nQTime[2];
+ m_nQTimeOverFlag = pScr->m_nQTimeOverFlag;
+ m_nMasterRecipe = pScr->m_nMasterRecipe;
+ m_strProductRecipeId = pScr->m_strProductRecipeId;
+ m_strPCode = pScr->m_strPCode;
+ m_strUseType = pScr->m_strUseType;
+ m_strPanelMeasure = pScr->m_strPanelMeasure;
+ m_nMode = pScr->m_nMode;
+ m_nSlotUnitSelectFlag = pScr->m_nSlotUnitSelectFlag;
+ m_nSourcePortNo = pScr->m_nSourcePortNo;
+ m_nSourceSlotNo = pScr->m_nSourceSlotNo;
+ m_nTargetPortNo = pScr->m_nTargetPortNo;
+ m_nTargetSlotNo = pScr->m_nTargetSlotNo;
}
int CJobDataS::getCassetteSequenceNo()
@@ -455,7 +497,7 @@
int CJobDataS::unserialize(const char* pszBuffer, int nBufferSize)
{
- if (nBufferSize < 256 * 2) return -1;
+ if (nBufferSize < JOBDATAS_SIZE) return -1;
int index = 0;
memcpy(&m_nCassetteSequenceNo, &pszBuffer[index], sizeof(short));
@@ -558,7 +600,7 @@
}
- return 256 * 2;
+ return JOBDATAS_SIZE;
}
void CJobDataS::getAttributeVector(CAttributeVector& attrubutes, int beginWeight)
--
Gitblit v1.9.3