From c8173fa96f226ff88412d07955fb340de4681ffc Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期四, 06 三月 2025 11:21:34 +0800
Subject: [PATCH] 1.实现 CIM model change指令下发到机器。与之前的从CC link读数据逻辑稍有不同,下发指令为写数据,因此,从原CStep派生两个类,CReadStep(用于读数据),CWriteStep(用于写数据),然后根据使用场景选择合适的基数做应用层逻辑。已完成待测试验证

---
 SourceCode/Bond/Servo/CEqProcessStep.cpp |   34 ++++++++++++++++++++++++++++++----
 1 files changed, 30 insertions(+), 4 deletions(-)

diff --git a/SourceCode/Bond/Servo/CEqProcessStep.cpp b/SourceCode/Bond/Servo/CEqProcessStep.cpp
index 868554d..f566e43 100644
--- a/SourceCode/Bond/Servo/CEqProcessStep.cpp
+++ b/SourceCode/Bond/Servo/CEqProcessStep.cpp
@@ -6,7 +6,7 @@
 
 
 namespace SERVO {
-	CEqProcessStep::CEqProcessStep()
+	CEqProcessStep::CEqProcessStep() : CReadStep()
 	{
 		m_nProcessDev = 0;
 		m_nTotalParameter = 0;
@@ -17,10 +17,36 @@
 
 	}
 
+	void CEqProcessStep::getAttributeVector(CAttributeVector& attrubutes)
+	{
+		CReadStep::getAttributeVector(attrubutes);
+
+		attrubutes.addAttribute(new CAttribute("Glass ID",
+			m_strGlassId.c_str(), ""));
+		attrubutes.addAttribute(new CAttribute("Start Time",
+			m_strStartTime.c_str(), ""));
+		attrubutes.addAttribute(new CAttribute("End Time",
+			m_strEndTime.c_str(), ""));
+		attrubutes.addAttribute(new CAttribute("Total Parameter",
+			std::to_string(m_nTotalParameter).c_str(), ""));
+		attrubutes.addAttribute(new CAttribute("Total Group",
+			std::to_string(m_nTotalGroup).c_str(), ""));
+		attrubutes.addAttribute(new CAttribute("Current Group",
+			std::to_string(m_nCurrentGroup).c_str(), ""));
+
+		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(), ""));
+		}
+	}
+
 #define PROGRESS_BUF_SIZE		(1024 + 64)
 	int CEqProcessStep::onReadData()
 	{
-		CStep::onReadData();
+		CReadStep::onReadData();
 
 		// W1864 ~ W1A74, 529个word, 1058 bytes
 		char szBuffer[PROGRESS_BUF_SIZE];
@@ -81,7 +107,7 @@
 
 	int CEqProcessStep::onComplete()
 	{
-		CStep::onComplete();
+		CReadStep::onComplete();
 		LOGI("<CEqProcessStep> onComplete.");
 
 		return 0;
@@ -89,7 +115,7 @@
 
 	int CEqProcessStep::onTimeout()
 	{
-		CStep::onTimeout();
+		CReadStep::onTimeout();
 		LOGI("<CEqProcessStep> onTimeout.");
 
 		return 0;

--
Gitblit v1.9.3