From 02fb493f0903013e5258c2ff5e2cb27de873378a Mon Sep 17 00:00:00 2001 From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com> Date: 星期四, 12 十二月 2024 10:51:43 +0800 Subject: [PATCH] 1.警告性息弹窗; 2.警告性息列表; --- SourceCode/Bond/BondEq/AlarmMonitor.h | 25 ++++++++++++++----------- 1 files changed, 14 insertions(+), 11 deletions(-) diff --git a/SourceCode/Bond/BondEq/AlarmMonitor.h b/SourceCode/Bond/BondEq/AlarmMonitor.h index ae84f65..a0b0fac 100644 --- a/SourceCode/Bond/BondEq/AlarmMonitor.h +++ b/SourceCode/Bond/BondEq/AlarmMonitor.h @@ -17,24 +17,27 @@ virtual void onRecvBroadcast(void* pSender, CIntent* pIntent); virtual void init(); virtual void term(); - void setBeginAddr(int nAddr); int readAlarmListFromFile(const char* pszFilepath); virtual void OnTimer(UINT nTimerid); const char* getAlarmText(int nID); - void Alarm(int id, int level); virtual void Serialize(CArchive& ar); - void getAlarmList(std::list<CAlarm*>& list); + std::map<int, CAlarm*>& getAlarmingMap(); + BOOL isAlarming(); + CAlarm* getActiveAlarm(); + void getAlarmRecords(std::list< CAlarm*>& list); + std::list< CAlarm*>& getAlarmRecords(); private: - void AddAlarm(CAlarm* pAlarm); + BOOL compareData(const char* pScrData, const char* pTarData, int len); + int addAlarmTemplate(int id, int level, const char* pszDescription); + BOOL isAlarmOn(int id); + BOOL findAlarm(std::vector<int>& ids, int id); + void addAlarmToHistoryRecord(CAlarm* pAlarm); private: - int m_nBeginAddr; - -private: - std::map<int, std::string> m_mapAlarmText; - int m_nLastId; - int m_nLastLevel; - std::list<CAlarm*> m_alarms; + std::map<int, CAlarm*> m_mapAlarmTemplate; // 这是警告的模板,从文件加载 + std::map<int, CAlarm*> m_mapAlarming; // 正在发生的警告 + std::list< CAlarm*> m_alarms; // 历史发生的警告信息,考虑保存一定数量 + char* m_pRawData; }; -- Gitblit v1.9.3