From 9b2d1e962bf802f75c44c1f5372fc4cf029e3f4e Mon Sep 17 00:00:00 2001
From: darker <mr.darker@163.com>
Date: 星期二, 11 二月 2025 11:11:13 +0800
Subject: [PATCH] 1. 添加SECS运行设置管理类

---
 SourceCode/Bond/Servo/HsmsPassive.h |   36 ++++++++++++++++++++++++++++++++----
 1 files changed, 32 insertions(+), 4 deletions(-)

diff --git a/SourceCode/Bond/Servo/HsmsPassive.h b/SourceCode/Bond/Servo/HsmsPassive.h
index da96cbd..116ce6e 100644
--- a/SourceCode/Bond/Servo/HsmsPassive.h
+++ b/SourceCode/Bond/Servo/HsmsPassive.h
@@ -11,13 +11,37 @@
 #define ER_BUSY				-2
 #define ER_PARAM_ERROR		-3
 
-typedef std::function<void(void* pFrom, const std::vector<unsigned int>& ecids, 
-	std::vector<unsigned int>& ecvs)> SECSEQCONSTANTREQUEST;
-typedef std::function<void(void* pFrom, int error)> ONDATAERROR;
+
+/*
+ * 常量数据结构
+ */
+typedef struct _EQConstant
+{
+	unsigned int id;
+	char szValue[256];
+} EQConstant;
+
+/*
+ * Command 数据结构
+ */
+typedef struct _CommandParameter
+{
+	char szName[256];
+	char szValue[256];
+} CommandParameter;
+
+typedef std::function<void(void* pFrom)> SECSEQOFFLINE;
+typedef std::function<void(void* pFrom, std::vector<EQConstant>&)> SECSEQCONSTANTREQUEST;
+typedef std::function<void(void* pFrom, const char*, std::vector<CommandParameter>&)> SECSCommand;
 typedef struct _SECSListener
 {
+	SECSEQOFFLINE				onEQOffLine;
+	SECSEQOFFLINE				onEQOnLine;
 	SECSEQCONSTANTREQUEST		onEQConstantRequest;
+	SECSEQCONSTANTREQUEST		onEQConstantSend;
+	SECSCommand					onCommand;
 } SECSListener;
+
 
 class CModel;
 class CHsmsPassive
@@ -51,9 +75,13 @@
 	/* reply开头的函数为回复函数 */
 	int replyAreYouThere(IMessage* pRecv);
 	int replyEstablishCommunications(IMessage* pRecv);
-	int replyEquipmentConstant(IMessage* pRecv);
+	int replyOnLine(IMessage* pRecv);
+	int replyOffLine(IMessage* pRecv);
+	int replyEquipmentConstantRequest(IMessage* pRecv);
+	int replyEquipmentConstantSend(IMessage* pRecv);
 	int replyDatetime(IMessage* pRecv);
 	int replyEanbleDisableEventReport(IMessage* pRecv);
+	int replyCommand(IMessage* pRecv);
 	int replyEanbleDisableAlarmReport(IMessage* pRecv);
 	int replyQueryPPIDList(IMessage* pRecv);
 	int replyTerminalDisplay(IMessage* pRecv);

--
Gitblit v1.9.3