123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- #ifndef _EVENTMANAGER_H_
- #define _EVENTMANAGER_H_
- #define YK 0 // 遥控
- #define BACK 1 // 恢复正常
- #define UPALARM 2 // 上限告警
- #define LOWALARM 3 // 下限告警
- #define ALARM 4 // 告警
- #define UPPER_LIMIT_ID 1000 // 上限告警
- #define LOWER_LIMIT_ID 1001 // 下限告警
- #define MAX_EQUIP_DESC 255
- static char* EVENTTYPE[] =
- {
- "遥控",
- "恢复正常",
- "上限告警",
- "下限告警",
- "告警",
- };
- class USCADADLLEXPORT CAlarmEvent: public CObject
- {
- public:
- CAlarmEvent();
- SYSTEMTIME time;
- CString strContent;
- CString strWarningTime;
- CString strUid;
- int nVarID;
- double dbParaValue;
- int nUpperLimit;
- int nLowerLimit;
- int nNormalState;
- int nAlarmState;
- int nWarningLevel;
- int nStatus;//0:报警 1:恢复正常
- int nAlarmIndex;//报警索引
- int nNoticeDelay;//通知延时
- int nDealStatus;//处理状态 0:未处理 1:处理过时 2:不处理 3:确认
- int nGet;//0:没有从列表取出 1:已经取出
- int nSoundTimes;//声音播放次数
- };
- typedef CTypedPtrList<CObList, CAlarmEvent*> CEventList;
- class USCADADLLEXPORT CEventServer
- {
- public:
- CEventServer();
- ~CEventServer();
- void AddNewEvent(CAlarmEvent* event);
- CAlarmEvent* GetNewEvent( );
- CAlarmEvent* GetUnconfirmEvent();
- void DeleteOneEvent( CString strUid, int nVarID,int nStatus );
- void DeleteOneEvent( int iIndex );
- void ClearAllEvent();
- void Validate(bool valid);
- CAlarmEvent* GetOneEvent( int iIndex );
- void SetOneEventInfo( int iIndex,int nIsSound,int nColor );
- void AddAlarmEvent( CString strDevUid, int nVarID,int nStatus,CString strContent,double dbParaValue,
- int nUpperLimit,int nLowerLimit, int nNormalState,int nAlarmState,int nWarningLevel,int nAlarmIndex,int nNoticeDelay,CString strWarningTime );
- CAlarmEvent* GetUnconfirmEventForLoopPlaySound( CAlarmEvent *pEvent );
- void SetEventStatus2Config( CString strDevUid, int nVarID,int nAlarmIndex );//把事件的处理状态设为已经确认
- public:
- CEventList eventList;
- bool m_bValid;
- private:
- CRITICAL_SECTION m_cs;
- };
- #endif
|