From 5edb485d226790306097e40ea954efb2ed90dd21 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期一, 11 八月 2025 16:05:09 +0800
Subject: [PATCH] 1.EAP:查询CJSpace和PJSpace功能模拟,Master对EAP查询机器变量的回复;

---
 SourceCode/Bond/Servo/CVariable.cpp |   49 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 49 insertions(+), 0 deletions(-)

diff --git a/SourceCode/Bond/Servo/CVariable.cpp b/SourceCode/Bond/Servo/CVariable.cpp
index 21ddb44..60d0ab9 100644
--- a/SourceCode/Bond/Servo/CVariable.cpp
+++ b/SourceCode/Bond/Servo/CVariable.cpp
@@ -7,6 +7,7 @@
 	{
 		m_nVarialbeId = 0;
 		m_format = SVFromat::U1;
+		m_nValue = 0;
 	}
 
 	CVariable::CVariable(const char* pszId, const char* pszName, const char* pszFormat, const char* pszRemark)
@@ -87,4 +88,52 @@
 	{
 		return m_strRemark;
 	}
+
+	void CVariable::setValue(__int64 value)
+	{
+		if (m_format == SVFromat::U1 || m_format == SVFromat::U2 || m_format == SVFromat::I2) {
+			m_nValue = value;
+		}
+	}
+
+	void CVariable::setValue(const char* pszValue)
+	{
+		std::string strTemp = pszValue;
+		if (m_format == SVFromat::A20) {
+			if (strTemp.length() > 20) {
+				strTemp = strTemp.substr(0, 20);
+			}
+		}
+		else if (m_format == SVFromat::A50) {
+			if (strTemp.length() > 50) {
+				strTemp = strTemp.substr(0, 50);
+			}
+		}
+
+		m_strValue = strTemp;
+	}
+
+	std::string CVariable::getValue()
+	{
+		std::string strRet;
+		if (m_format == SVFromat::U1 || m_format == SVFromat::U2 || m_format == SVFromat::I2) {
+			strRet = std::to_string(m_nValue);
+		}
+		else if(m_format == SVFromat::A20 || m_format == SVFromat::A50) {
+			strRet = m_strValue;
+		}
+
+		return strRet;
+	}
+
+	__int64 CVariable::getIntValue()
+	{
+		if (m_format == SVFromat::U1 || m_format == SVFromat::U2 || m_format == SVFromat::I2) {
+			return m_nValue;
+		}
+
+		return 0;
+	}
+
+
 }
\ No newline at end of file

--
Gitblit v1.9.3