From c0d56e6ac7ec15e232fb38c457eefc89cf80e9da Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期三, 21 五月 2025 16:02:09 +0800
Subject: [PATCH] 1.Port Command功能实现;

---
 SourceCode/Bond/Servo/CEqProcessStep.cpp |   33 ++++++++++++++++++---------------
 1 files changed, 18 insertions(+), 15 deletions(-)

diff --git a/SourceCode/Bond/Servo/CEqProcessStep.cpp b/SourceCode/Bond/Servo/CEqProcessStep.cpp
index e64e92b..8c607bc 100644
--- a/SourceCode/Bond/Servo/CEqProcessStep.cpp
+++ b/SourceCode/Bond/Servo/CEqProcessStep.cpp
@@ -3,10 +3,11 @@
 #include "CEqProcessStep.h"
 #include "Log.h"
 #include "ToolUnits.h"
+#include "CEquipment.h"
 
 
 namespace SERVO {
-	CEqProcessStep::CEqProcessStep()
+	CEqProcessStep::CEqProcessStep() : CReadStep()
 	{
 		m_nProcessDev = 0;
 		m_nTotalParameter = 0;
@@ -19,34 +20,35 @@
 
 	void CEqProcessStep::getAttributeVector(CAttributeVector& attrubutes)
 	{
-		CStep::getAttributeVector(attrubutes);
+		CReadStep::getAttributeVector(attrubutes);
 
+		unsigned int weight = 31;
 		attrubutes.addAttribute(new CAttribute("Glass ID",
-			m_strGlassId.c_str(), ""));
+			m_strGlassId.c_str(), "", weight++));
 		attrubutes.addAttribute(new CAttribute("Start Time",
-			m_strStartTime.c_str(), ""));
+			m_strStartTime.c_str(), "", weight++));
 		attrubutes.addAttribute(new CAttribute("End Time",
-			m_strEndTime.c_str(), ""));
+			m_strEndTime.c_str(), "", weight++));
 		attrubutes.addAttribute(new CAttribute("Total Parameter",
-			std::to_string(m_nTotalParameter).c_str(), ""));
+			std::to_string(m_nTotalParameter).c_str(), "", weight++));
 		attrubutes.addAttribute(new CAttribute("Total Group",
-			std::to_string(m_nTotalGroup).c_str(), ""));
+			std::to_string(m_nTotalGroup).c_str(), "", weight++));
 		attrubutes.addAttribute(new CAttribute("Current Group",
-			std::to_string(m_nCurrentGroup).c_str(), ""));
+			std::to_string(m_nCurrentGroup).c_str(), "", weight++));
 
 		char szName[256];
 		int index = 0;
 		for (auto item : m_params) {
 			sprintf_s(szName, 256, "Parameter %d", ++index);
 			attrubutes.addAttribute(new CAttribute(szName,
-				item.c_str(), ""));
+				item.c_str(), "", weight++));
 		}
 	}
 
 #define PROGRESS_BUF_SIZE		(1024 + 64)
 	int CEqProcessStep::onReadData()
 	{
-		CStep::onReadData();
+		CReadStep::onReadData();
 
 		// W1864 ~ W1A74, 529个word, 1058 bytes
 		char szBuffer[PROGRESS_BUF_SIZE];
@@ -59,7 +61,7 @@
 		// 解释数据
 		// Glass ID(1864~186D)
 		int index = 0;
-		convertString(&szBuffer[index], (0x186d - 0x1864 + 1) * 2, m_strStartTime);
+		convertString(&szBuffer[index], (0x186d - 0x1864 + 1) * 2, m_strGlassId);
 		index += (0x186d - 0x1864 + 1) * 2;
 
 		// Process Start Time(186e~1875)
@@ -94,8 +96,9 @@
 			index += 20;
 		}
 
-		if (m_nCurrentGroup == m_nTotalGroup && m_listener.onEvent != nullptr) {
-			m_listener.onEvent(this, STEP_EVENT_PROCESS_DATA, nullptr);
+		if (m_nCurrentGroup == m_nTotalGroup) {
+			ASSERT(m_pEquipment);
+			m_pEquipment->onStepEvent(this, STEP_EVENT_PROCESS_DATA);
 		}
 
 
@@ -107,7 +110,7 @@
 
 	int CEqProcessStep::onComplete()
 	{
-		CStep::onComplete();
+		CReadStep::onComplete();
 		LOGI("<CEqProcessStep> onComplete.");
 
 		return 0;
@@ -115,7 +118,7 @@
 
 	int CEqProcessStep::onTimeout()
 	{
-		CStep::onTimeout();
+		CReadStep::onTimeout();
 		LOGI("<CEqProcessStep> onTimeout.");
 
 		return 0;

--
Gitblit v1.9.3