From 18f05a37d19e0e20db266a4e32e8263847e94a76 Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期二, 06 一月 2026 18:15:05 +0800
Subject: [PATCH] 1.测试,完善,+日志

---
 SourceCode/Bond/Servo/HsmsPassive.h |   13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/SourceCode/Bond/Servo/HsmsPassive.h b/SourceCode/Bond/Servo/HsmsPassive.h
index 3be6125..995aa66 100644
--- a/SourceCode/Bond/Servo/HsmsPassive.h
+++ b/SourceCode/Bond/Servo/HsmsPassive.h
@@ -138,7 +138,7 @@
 	int deleteReport(int rptid);
 	int addReport(int rptid, const std::vector<unsigned int>& vids);
 	int updateReport(int rptid, const std::vector<unsigned int>& vids);
-	void clearAllReport();
+	void clearAllReport(BOOL bSave = FALSE);
 
 	// 浠庢枃浠朵腑鍔犺浇CVariable鍒楄〃
 	int loadVarialbles(const char* pszFilepath);
@@ -300,6 +300,13 @@
 	// CollectionEvent vector
 	std::vector<SERVO::CCollectionEvent*> m_collectionEvents;
 
-	// Spooling Config
-	std::map<uint16_t, std::set<uint16_t>> m_spoolingConfig;
+	// Spooling blacklist: StreamId -> {FunctionId...}
+	// In this map means DO NOT spool/cache.
+	// Special case: stream 1 is not spooled regardless of config.
+	// If a stream key exists with empty set => blacklist ALL functions in that stream.
+	std::map<uint16_t, std::set<uint16_t>> m_spoolBlacklistByStream;
+	bool m_spoolingEnabled{ true };
+
+private:
+	bool shouldSpool(uint8_t streamId, uint8_t functionId) const;
 };

--
Gitblit v1.9.3