From 4d9ee1abb3290f468fe30e048be211bb7fa8cf84 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期二, 13 五月 2025 09:22:34 +0800
Subject: [PATCH] CJobDataS增加rawData
---
SourceCode/Bond/Servo/CJobDataS.h | 3 +++
SourceCode/Bond/Servo/CGlass.h | 4 ++++
SourceCode/Bond/Servo/CJobDataS.cpp | 19 ++++++++++++++++++-
3 files changed, 25 insertions(+), 1 deletions(-)
diff --git a/SourceCode/Bond/Servo/CGlass.h b/SourceCode/Bond/Servo/CGlass.h
index e19a9a6..38ecaf2 100644
--- a/SourceCode/Bond/Servo/CGlass.h
+++ b/SourceCode/Bond/Servo/CGlass.h
@@ -2,6 +2,10 @@
#include "Context.h"
#include <string>
#include "CPath.h"
+#include "CJobDataA.h"
+#include "CJobDataB.h"
+#include "CJobDataC.h"
+#include "CJobDataS.h"
namespace SERVO {
diff --git a/SourceCode/Bond/Servo/CJobDataS.cpp b/SourceCode/Bond/Servo/CJobDataS.cpp
index 54d0689..0c9de03 100644
--- a/SourceCode/Bond/Servo/CJobDataS.cpp
+++ b/SourceCode/Bond/Servo/CJobDataS.cpp
@@ -4,6 +4,9 @@
namespace SERVO {
+#define JOBDATAS_SIZE (256 * 2)
+#define ENABLE_JOBDATAS_RAWDATA TRUE
+
CJobDataS::CJobDataS()
{
m_nCassetteSequenceNo = 0;
@@ -26,11 +29,19 @@
m_nSourceSlotNo = 0;
m_nTargetPortNo = 0;
m_nTargetSlotNo = 0;
+ m_pRawData = nullptr;
+ if (ENABLE_JOBDATAS_RAWDATA) {
+ m_pRawData = new char[JOBDATAS_SIZE];
+ serialize(m_pRawData, JOBDATAS_SIZE);
+ }
}
CJobDataS::~CJobDataS()
{
-
+ if (m_pRawData != nullptr) {
+ delete[] m_pRawData;
+ m_pRawData = nullptr;
+ }
}
int CJobDataS::getCassetteSequenceNo()
@@ -541,6 +552,12 @@
index += sizeof(short);
+ // 缓存原始数据
+ if (m_pRawData != nullptr) {
+ memcpy(m_pRawData, pszBuffer, JOBDATAS_SIZE);
+ }
+
+
return 256 * 2;
}
diff --git a/SourceCode/Bond/Servo/CJobDataS.h b/SourceCode/Bond/Servo/CJobDataS.h
index 4cf456a..3894db2 100644
--- a/SourceCode/Bond/Servo/CJobDataS.h
+++ b/SourceCode/Bond/Servo/CJobDataS.h
@@ -103,6 +103,9 @@
int m_nSourceSlotNo;
int m_nTargetPortNo;
int m_nTargetSlotNo;
+
+ private:
+ char* m_pRawData;
};
}
--
Gitblit v1.9.3