📄 dnp3sas.h
字号:
#ifndef DNP3SAS_H#define DNP3SAS_H#include "msystem.h"#include "dnp3tl.h"#include "dnp3.h"#include "appservice.h"/** *@author */class CDNP3SAS : public CSAppService{public: CDNP3SAS::CDNP3SAS(CAllMgr* pAllMgr,CSerialPortDef* pChannel,WORD wSAddr,WORD wDAddr=0xffff); CDNP3SAS::~CDNP3SAS(); bool Init();protected: CDNP3TL m_TLService; //接收指示,并相应 void ExplainIND(CFrameNode* pFNRecv);public: virtual void ProtInfo(BYTE* pBuf, WORD wSize); virtual void YC(YCData* pYCValue,WORD wCount); virtual void YX(YXData* pBoolValue,WORD wCount); virtual void DD(DDData* pDDValue,WORD wCount); virtual void SOE(SOEData* pSOEValue,WORD wCount);// virtual void SEP(WORD wDevNo,SEPData* pSEPValue,WORD wCount); //保护、重合闸单个事件// virtual void SPE(WORD wDevNo,SPEData* pSPEValue,WORD wCount); //保护启动// virtual void OCI(WORD wDevNo,OCIData* pOCIValue,WORD wCount); //输出protected: void Load(); CDNP3YKInfos m_YKInfos; CDNP3YXInfos m_YXInfos; CDNP3YCInfos m_YCInfos; CDNP3SOEInfos m_SOEInfos;// CDNP3DDInfos m_DDInfos; bool Has1ClassData();//变化yx bool Has2ClassData();//越死区yc bool Has3ClassData();//soe void GetAllYC(); void GetAllYX(); void GetAllDD(); void Get1ClassData(); void Get2ClassData(); void Get3ClassData(); WORD GetIINs(); bool Select(); bool Operator(); pthread_t m_hThreadGet;private: BYTE m_byOrder; CTimeVal m_tvLast; BYTE m_abyYKRtn[6]; bool m_bHasYKRtn; CTimeVal m_tvCallTime; bool m_bRtnCallClock; struIINs m_IINs;friend void *DNP3SlaveGetIND(void* pVoid);};#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -