From 410ea79955e2d115643a38f40e006f1aeaba897b Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期六, 26 四月 2025 14:39:23 +0800
Subject: [PATCH] 1.增加CVcrEventStep

---
 SourceCode/Bond/Servo/CMaster.cpp |   20 +++++++++++++++++++-
 1 files changed, 19 insertions(+), 1 deletions(-)

diff --git a/SourceCode/Bond/Servo/CMaster.cpp b/SourceCode/Bond/Servo/CMaster.cpp
index 9d7a38d..0c7ab7c 100644
--- a/SourceCode/Bond/Servo/CMaster.cpp
+++ b/SourceCode/Bond/Servo/CMaster.cpp
@@ -34,7 +34,7 @@
 
 	CMaster::CMaster()
 	{
-		m_listener = {nullptr, nullptr, nullptr};
+		m_listener = {nullptr, nullptr, nullptr, nullptr};
 		m_bDataModify = FALSE;
 		m_hEventReadBitsThreadExit[0] = ::CreateEvent(NULL, TRUE, FALSE, NULL);
 		m_hEventReadBitsThreadExit[1] = ::CreateEvent(NULL, TRUE, FALSE, NULL);
@@ -65,6 +65,7 @@
 		m_listener.onEqAlive = listener.onEqAlive;
 		m_listener.onEqCimStateChanged = listener.onEqCimStateChanged;
 		m_listener.onEqAlarm = listener.onEqAlarm;
+		m_listener.onEqVcrEventReport = listener.onEqVcrEventReport;
 	}
 
 	int CMaster::init()
@@ -197,6 +198,13 @@
 			CEquipment* p = (CEquipment*)pEquipment;
 			if (m_listener.onEqAlarm != nullptr) {
 				m_listener.onEqAlarm(this, p, state, alarmId, unitId, level);
+			}
+		};
+		listener.onVcrEventReport = [&](void* pEquipment, void* pReport) -> void {
+			CEquipment* p = (CEquipment*)pEquipment;
+			CVcrEventReport* p2 = (CVcrEventReport*)pReport;
+			if (m_listener.onEqVcrEventReport != nullptr) {
+				m_listener.onEqVcrEventReport(this, p, p2);
 			}
 		};
 		listener.onDataChanged = [&](void* pEquipment, int code) -> void {
@@ -433,6 +441,16 @@
 			}
 		}
 		{
+			// VCR1 Event Report
+			CEqVcrEventStep* pStep = new CEqVcrEventStep();
+			pStep->setName(STEP_EQ_VCR1_EVENT_REPORT);
+			pStep->setWriteSignalDev(0x4a);
+			pStep->setVcrEventReportDev(0x5fef);
+			if (pEquipment->addStep(STEP_ID_VCR1_EVENT_REPORT, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
 			CEqCimMessageClearStep* pStep = new CEqCimMessageClearStep();
 			pStep->setName(STEP_CIM_MESSAGE_CLEAR);
 			pStep->setWriteSignalDev(0x72);

--
Gitblit v1.9.3