From 4d9d8d22e3666076988c30afb4e7c6fe365c19aa Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期二, 06 一月 2026 18:53:04 +0800
Subject: [PATCH] 1.修复一个回复错误的问题;

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

diff --git a/SourceCode/Bond/Servo/HsmsPassive.h b/SourceCode/Bond/Servo/HsmsPassive.h
index 08fd3c0..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);
@@ -203,6 +203,9 @@
 	int requestEventReportSend(unsigned int CEID);
 	int requestEventReportSend(const char* pszEventName);
 	int requestEventReportSend_CarrierID_Readed();
+	int requestEventReportSend_CheckSlotMap();
+	int requestEventReportSend_SlotMapVerificationOK();
+	int requestEventReportSend_SlotMapVerificationNG();
 	int requestEventReportSend_Port_Unload_Ready();
 	int requestEventReportSend_Port_Load_Ready();
 	int requestEventReportSend_Port_Ready_To_Release();
@@ -215,6 +218,10 @@
 	int requestEventReportSend_Panel_Start();
 	int requestEventReportSend_Panel_End();
 	int requestEventReportSend_OCR_PanelID_Read_OK();
+	int requestEventReportSend_LoadPortNotAssoc();
+	int requestEventReportSend_ProcessDataReport();
+	int requestEventReportSend_SubEqpStart();
+	int requestEventReportSend_SubEqpEnd();
 
 private:
 	void replyAck(int s, int f, unsigned int systemBytes, BYTE ack, const char* pszAckName);
@@ -293,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