📄 asdu.h
字号:
//asdu.h#ifndef ASDU_H#define ASDU_H#include "103Struct.h"#include "baseclass/publicclass.h"// #include <qstringlist.h>#include <iostream>#include <sstream>#define MAXLEN 253class CAsdu{public: CAsdu(); virtual ~CAsdu();public: virtual void ExplainAsdu(int iProcessType = 0) { iProcessType = 0; } virtual void BulidArray(CByteArray& Data) { Data.SetSize(0); } void SaveAsdu(CByteArray& Data);public: BYTE m_TYP; //ASDU 类型标示 VSQ m_VSQ; //ASDU 可变结构限定词 BYTE m_COT; //ASDU 传送原因 BYTE m_Addr;//ASDU 应用服务数据单元公共地址 BYTE m_FUN; //ASDU 功能类型 BYTE m_INF; //ASDU 信息序号 CByteArray m_ASDUData;//ASDU 原始数据 int m_iResult;};class CAsdu07 : public CAsdu{public: CAsdu07(); CAsdu07(CAsdu& a); virtual void BulidArray(CByteArray& Data);public: BYTE m_SCN;};class CAsdu10 : public CAsdu{public: CAsdu10(); CAsdu10(CAsdu& a); ~CAsdu10(); void Init(); virtual void ExplainAsdu(int iProcessType = 0); virtual void ExplainGID(CByteArray& Gid, int iProcessType = 0); virtual void BulidArray(CByteArray& Data);public: BYTE m_RII; NGD m_NGD; QPtrList<DataSet> m_DataSets; int m_iNum; bool m_bSuccess;};class CAsdu21 : public CAsdu{public: CAsdu21(); ~CAsdu21(); virtual void BulidArray(CByteArray& Data);public: BYTE m_RII; BYTE m_NOG; QPtrList<DataSet> m_DataSets;};class CAsdu23 : public CAsdu{public: CAsdu23(); CAsdu23(CAsdu& a); ~CAsdu23(); virtual void ExplainAsdu(int iProcessType = 0);public: CMyArray<DistrubDataTable, DistrubDataTable>m_DDTables;};class CAsdu24 : public CAsdu{public: CAsdu24(); virtual void BulidArray(CByteArray& Data);public: BYTE m_TOO; BYTE m_TOV; WORD m_FAN; BYTE m_ACC;};class CAsdu25 : public CAsdu{public: CAsdu25(); virtual void BulidArray(CByteArray& Data);public: BYTE m_TOO; BYTE m_TOV; WORD m_FAN; BYTE m_ACC;};class CAsdu26 : public CAsdu{public: CAsdu26(); CAsdu26(CAsdu& a); virtual void ExplainAsdu(int iProcessType = 0);public: BYTE m_TOV; WORD m_FAN; WORD m_NOF; BYTE m_NOC; WORD m_NOE; WORD m_INT; CP32Time2a m_Cp32Time;};class CAsdu27 : public CAsdu{public: CAsdu27(); CAsdu27(CAsdu& a); virtual void ExplainAsdu(int iProcessType = 0);public: BYTE m_TOV; WORD m_FAN; BYTE m_ACC; float m_RPV;//一次额定值 float m_RSV;//二次额定值 float m_RFA;//参比因子};class CAsdu28 : public CAsdu{public: CAsdu28(); CAsdu28(CAsdu& a); virtual void ExplainAsdu(int iProcessType = 0);public: WORD m_FAN;};class CAsdu29 : public CAsdu{public: CAsdu29(); CAsdu29(CAsdu& a); virtual void ExplainAsdu(int iProcessType = 0);public: WORD m_FAN; CByteArray m_SwitchData;};class CAsdu30 : public CAsdu{public: CAsdu30(); CAsdu30(CAsdu& a); virtual void ExplainAsdu(int iProcessType = 0);public: BYTE m_TOV; WORD m_FAN; BYTE m_ACC; CByteArray m_AnalogData;};class CAsdu31 : public CAsdu{public: CAsdu31(); CAsdu31(CAsdu& a); virtual void ExplainAsdu(int iProcessType = 0);public: BYTE m_TOO; BYTE m_TOV; WORD m_FAN; BYTE m_ACC;};#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -