From d68541dce155a682f65b7c3fbfbfbeef17ea5b8f Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期一, 12 五月 2025 12:00:41 +0800
Subject: [PATCH] 1.StoredJob, Fetched out Job实现; 2.CStep增加定制的Attribute, 以便通过的Step不使用getAttributeVector也能添加不一样的Attribute;
---
SourceCode/Bond/Servo/CEqAlarmStep.cpp | 79 +++++++++++++++++++++++++++++++--------
1 files changed, 62 insertions(+), 17 deletions(-)
diff --git a/SourceCode/Bond/Servo/CEqAlarmStep.cpp b/SourceCode/Bond/Servo/CEqAlarmStep.cpp
index 9d2b593..f488927 100644
--- a/SourceCode/Bond/Servo/CEqAlarmStep.cpp
+++ b/SourceCode/Bond/Servo/CEqAlarmStep.cpp
@@ -5,7 +5,7 @@
namespace SERVO {
- CEqAlarmStep::CEqAlarmStep() : CStep()
+ CEqAlarmStep::CEqAlarmStep() : CReadStep()
{
m_nAlarmDev = 0;
m_nAlarmState = 0;
@@ -19,32 +19,55 @@
{
}
+
+ void CEqAlarmStep::getAttributeVector(CAttributeVector& attrubutes)
+ {
+ CReadStep::getAttributeVector(attrubutes);
+
+ unsigned int weight = 31;
+ attrubutes.addAttribute(new CAttribute("Alarm State",
+ std::to_string(m_nAlarmState).c_str(), "", weight++));
+ attrubutes.addAttribute(new CAttribute("Unit ID",
+ std::to_string(m_nUnitId).c_str(), "", weight++));
+ attrubutes.addAttribute(new CAttribute("Alarm Level",
+ std::to_string(m_nAlarmLevel).c_str(), "", weight++));
+ attrubutes.addAttribute(new CAttribute("Alarm Code",
+ std::to_string(m_nAlarmCode).c_str(), "", weight++));
+ attrubutes.addAttribute(new CAttribute("Alarm ID",
+ std::to_string(m_nAlarmId).c_str(), "", weight++));
+ attrubutes.addAttribute(new CAttribute("Text",
+ m_strText.c_str(), "", weight++));
+ attrubutes.addAttribute(new CAttribute("Description",
+ m_strDescription.c_str(), "", weight++));
+ }
+
int CEqAlarmStep::onReadData()
{
- CStep::onReadData();
+ CReadStep::onReadData();
char szBuffer[64];
int nRet = m_pCclink->ReadData2(m_station, DeviceType::W,
m_nAlarmDev, 64, szBuffer);
- if (0 == nRet) {
- m_nAlarmState = (unsigned int)CToolUnits::toInt16(&szBuffer[0]);
- m_nUnitId = (unsigned int)CToolUnits::toInt16(&szBuffer[2]);
- m_nAlarmId = (unsigned int)CToolUnits::toInt16(&szBuffer[4]);
- m_nAlarmCode = (unsigned int)CToolUnits::toInt16(&szBuffer[6]);
- m_nAlarmLevel = (unsigned int)CToolUnits::toInt16(&szBuffer[8]);
-
- LOGI("<CEqAlarmStep> Equipment Alarm state Changed<State:%d, Unit:%d, Level:%d, Code:%d, ID:%d>\n",
- m_nAlarmState, m_nUnitId, m_nAlarmLevel, m_nAlarmCode, m_nAlarmId,
- m_strText.c_str(), m_strDescription.c_str());
+ if (0 != nRet) {
+ return -1;
}
+ m_nAlarmState = (unsigned int)CToolUnits::toInt16(&szBuffer[0]);
+ m_nUnitId = (unsigned int)CToolUnits::toInt16(&szBuffer[2]);
+ m_nAlarmId = (unsigned int)CToolUnits::toInt16(&szBuffer[4]);
+ m_nAlarmCode = (unsigned int)CToolUnits::toInt16(&szBuffer[6]);
+ m_nAlarmLevel = (unsigned int)CToolUnits::toInt16(&szBuffer[8]);
+
+ LOGI("<CEqAlarmStep> Equipment Alarm state Changed<State:%d, Unit:%d, Level:%d, Code:%d, ID:%d>\n",
+ m_nAlarmState, m_nUnitId, m_nAlarmLevel, m_nAlarmCode, m_nAlarmId,
+ m_strText.c_str(), m_strDescription.c_str());
return 0;
}
int CEqAlarmStep::onComplete()
{
- CStep::onComplete();
+ CReadStep::onComplete();
LOGI("<CEqAlarmStep> onComplete.");
return 0;
@@ -52,16 +75,38 @@
int CEqAlarmStep::onTimeout()
{
- CStep::onTimeout();
+ CReadStep::onTimeout();
LOGI("<CEqAlarmStep> onTimeout.");
return 0;
}
- void CEqAlarmStep::setAlarmDev(int nDev)
- {
- m_nAlarmDev = nDev;
+ void CEqAlarmStep::setAlarmDev(int nAlarmDev) {
+ m_nAlarmDev = nAlarmDev;
}
+ int CEqAlarmStep::getAlarmState()
+ {
+ return m_nAlarmState;
+ }
+ int CEqAlarmStep::getUnitId()
+ {
+ return m_nUnitId;
+ }
+
+ int CEqAlarmStep::getAlarmLevel()
+ {
+ return m_nAlarmLevel;
+ }
+
+ int CEqAlarmStep::getAlarmCode()
+ {
+ return m_nAlarmCode;
+ }
+
+ int CEqAlarmStep::getAlarmId()
+ {
+ return m_nAlarmId;
+ }
}
--
Gitblit v1.9.3