亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? iec104linkh.txt

?? 電力系統104規約源碼,C++實現
?? TXT
字號:
www.pudn.com > 104Master.rar > IEC104link.h

   

#ifndef		_IEC104link_ 
#define		_IEC104link_ 
 
 
#include  
 
///////////////////////////////////////////////////////////////////////////// 
// CChanSock command target 
//class CPingclientDlg; 
class AFX_EXT_CLASS CBasechSocket 
{ 
public: 
	void Close(); 
	int Receive(char *buff,int bufflen); 
	int Send(char *buff,int len); 
	bool Create(UINT Serport); 
	bool Accept(); 
	void thread_process(); 
	CBasechSocket(); 
	~CBasechSocket(); 
	BOOL Connect( LPCTSTR lpszHostAddress, UINT nHostPort ); 
	BOOL ShutDown( int nHow = 1 ); 
	virtual void OnAccept(int nErrorCode); 
	virtual void OnReceive(int nErrorCode); 
	virtual void OnClose(int nErrorCode); 
	HANDLE thread_handle; 
	DWORD ThreadID; 
	static void thread(void *pp); 
	SOCKET sock,newsock; 
	int length; 
	struct sockaddr_in SockAddr; 
	struct sockaddr tcpaddr; 
	char buf[1024]; 
	int rval,len; 
	char cli_name[64]; 
	char cli_ip[32]; 
 
	bool bConn; 
	 
}; 
 
#include "typedef.h" 
 
#define MAXLINKBUFF 249 
#define MAXSOCKLBUFF 4096 
#define MAXNUM_K 32 
//#define MAX_W 8 
#define SOCKDELAY 250 
#define CMD_CONN	0 
#define CMD_DISCONN 1 
#define CMD_USTOP   2 
#define CMD_USTART  3 
 
#define SOUR_ 
#define APP2_ 
#define INFO3_ 
class AFX_EXT_CLASS CIEC104link:public CBasechSocket 
{ 
public: 
	_int MAX_K; 
	_int MAX_W; 
	HANDLE rxmutex; 
	CIEC104link(); 
	~CIEC104link(); 
	char HostAddress[32]; 
	_WORD port; 
	_int GetSizeofInput_buffer(_int *OneFrameLen,_int *FrameNum); 
	_int GetSizeofOutput_buffer(_int *OneFrameLen,_int *FrameNum); 
 
	 
	//Copy ASDU msg to the Input_buffer 
	// When exit ,inputbuff_available=0; 
	// if urgent equ 1 then ACD=1; 
	bool ApplayerToLink(_BYTE *asbuff,_int aslen);// put msg into input_buffer 
	bool ApplayerControltoLink(_BYTE cmd); 
//	_BYTE  in_mutex; //0:available     1:unvailable  
	bool inputbuff_available;//0:unavailable   1:available 
	virtual void On_init_Link_process(){}; 
	virtual void On_init_Sock_process(){}; 
	virtual void OnTxRemark()=0; 
	virtual void OnRxRemark()=0; 
	virtual void OnNoteRemark()=0; 
	_int rxraw_length; 
	_int rxraw_buffer[MAXSOCKLBUFF]; 
	_int GetLinkerTxRemark(_char * disp,_int Maxlen); 
	_int GetLinkerRxRemark(_char * disp,_int Maxlen); 
	_int GetLinkerNoteRemark(_char * disp,_int Maxlen); 
	_char notestr[256]; 
	//The class inherited from this class, 
	virtual void OnApplayer(_int counts)=0; // 
	_int LinkToApplayer(_BYTE *asbuff,_int asmaxlen);// get msg from output_buffer , when exit outputbuff_available=0; 
	bool outputbuff_available;//0:unavailable   1:available 
	bool connected; 
	bool started; 
	bool proc_flag; 
	_int	timer_conn,TIMER_CONN;//30s 
	_int	TIMER_CLOSE;//15s 
	_int	TIMER_SFORMAT;//10s 
	_int	timer_Utest,TIMER_UTEST;//20 
	HANDLE Ontimer_handle; 
	_int Ontimercnt; 
protected: 
//	void OnRxOneFrame(_BYTE *rxbuf,_int *rxlen); 
	bool InitLink(); 
	bool CloseLink(); 
private: 
	_int I_confirm_cnt; 
	bool I_nocontinue; 
 
 
	_int timer_Confirm; 
	bool timer_Confirmflag; 
	_WORD Rxcnt; 
	_WORD Txcnt; 
	 
	_int timer_U_Start; 
	bool timer_U_Startflag; 
 
	_int timer_U_Stop; 
	bool timer_U_Stopflag; 
 
	_int timer_U_Test; 
	bool timer_U_Testflag; 
 
	static void Ontimer_thread(void *pp); 
//	void linkprocess(); 
	_int Sendtimercnt; 
 
 
	typedef struct Inputstru 
	{ 
		_int timer_close; 
		bool timer_flag; 
		_WORD Txcnt; 
		_BYTE Input_buffer[MAXLINKBUFF]; 
		_int Inlength; 
	} Input_Stru; 
 
	Input_Stru In_area[MAXNUM_K]; 
	_int In_area_frm_num; 
 
	typedef struct Outputstru 
	{ 
	_BYTE Output_buffer[MAXLINKBUFF]; 
	_int Outlength; 
 
	} Output_Stru; 
 
	Output_Stru Out_area[MAXNUM_K]; 
	_int Out_area_frm_num; 
 
	_BYTE rxbuffer[MAXSOCKLBUFF*2]; 
	_BYTE txbuffer[MAXSOCKLBUFF]; 
	_int rxlength; 
	_int txlength; 
	virtual void OnReceive(int nErrorCode); 
	virtual void OnClose(int nErrorCode); 
 
	void Start_process(); 
	void OnTimer(); 
	void SendProcess(); 
	_int RxOneBigFrame(_BYTE *rxbuf,_int maxbuflen); 
	void DecodeOneBigFrame(_BYTE *bigrxbuf,_int *biglength); 
	 
 
	void DecodeFrame(_BYTE *rxbuf,_int rxlen); 
	_int TxOneBigFrame(_BYTE *txbuf,_int txlen); 
	_int EncodeFrame(_BYTE *txbuf); 
 
 
	//when enter, rxbuff_dealing_flag=1; 
	//when exit, rxbuff_dealing_flag=0 outputbuff_available=1; 
	//make output_buffer full of msg 
	// rxbuffer(msg: linker+ASDU)===>Output_buffer(msg: ASDU) 
	_int IND_decodeApplayer(_BYTE *rxbuf,_int rxlen); 
	 
	 
	 
	//when enter 
	//when exit,  inputbuff_available=1; 
	//make output_buffer full of msg 
	//Input_buffer(msg: ASDU)===>txbuffer(msg: linker+ ASDU) 
	_int REQ_encodeApplayer(_BYTE *inputbuf,_int inputlen);//when enter, rxbuff_dealing_flag=1;when exit, rxbuff_dealing_flag=0 
	bool rxbuff_dealing_flag;// 0:idle    1:busy 
	void TimerIncrease(); 
	void scan_closeTimeout(); 
	void scan_timer_Sformat(); 
	void scan_timer_U_test(); 
	void Send_I_frame(); 
	void Recv_I_frame(_BYTE *rxbuf,bool * I_nocont); 
	void Recv_Utestcon_frame(); 
 
	void Recv_Utest_frame(); 
 
	void Recv_Ustartcon_frame(); 
 
	void Recv_Ustopcon_frame(); 
 
	void Recv_S_format(_BYTE *rxbuf); 
 
	void Send_U_Start(); 
 
	void Send_Ustop_frame(); 
 
	void Send_S_frame(); 
 
	void Send_Utest_frame(); 
 
	void Send_Utestcon_frame(); 
}; 
 
class AFX_EXT_CLASS CIEC104ASDU:public CIEC104link 
{ 
public: 
	void InitInstance(); 
	bool has_been_registered; 
	WORD limit_rtunum; 
	WORD limit_days; 
	char m_hardno[128]; 
	bool ReadRegisterKey(); 
 
	CIEC104ASDU(); 
	~CIEC104ASDU(); 
	virtual void On_Recv_ASDU_Msg(BYTE *recvbuf,int len ){};//顯示接收報文 
	virtual void On_SendMsg(BYTE *msgbuf,int len){}; 
	virtual void On_RecvMsg(BYTE *msgbuf,int len){}; 
	virtual void On_ErrorMsg(char *msgbuf){}; 
 
	 
	virtual void OnApplayer(_int counts); 
	virtual void OnTxRemark(); 
	virtual void OnRxRemark(); 
	virtual void OnNoteRemark(); 
 
 
	BYTE asdispRxbuf[MAXLINKBUFF*MAXNUM_K]; 
	_BYTE asdispTxbuf[MAXLINKBUFF*MAXNUM_K]; 
	_int asdispRxlen; 
	_int asdispTxlen; 
 
	BYTE asnoteRxbuf[MAXLINKBUFF*MAXNUM_K]; 
	_int asnoteRxlen; 
 
	_BYTE asRxbuf[MAXLINKBUFF*MAXNUM_K]; 
	_BYTE asTxbuf[MAXLINKBUFF]; 
	_int asRxlen; 
	_int asTxlen; 
	bool I_need; 
	bool Cmd_need; 
	_BYTE Cmd_need_code; 
 
}; 
 
 
 
#endif







 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产麻豆精品theporn| 91精品视频网| 日韩欧美久久一区| 日韩制服丝袜av| 777久久久精品| 欧美丰满嫩嫩电影| 国产91色综合久久免费分享| 久久久久久99精品| 色综合天天综合| 日本美女一区二区| 亚洲国产精品av| 欧美午夜精品久久久久久孕妇| 性久久久久久久久| 国产亚洲一本大道中文在线| 欧美三级日韩三级| 成人永久免费视频| 肉丝袜脚交视频一区二区| 日本vs亚洲vs韩国一区三区二区 | 色婷婷久久一区二区三区麻豆| 制服丝袜国产精品| 国产黄色精品网站| 日韩久久久精品| 国产精品每日更新在线播放网址| 午夜视频久久久久久| 国产午夜精品一区二区三区嫩草 | 国产真实乱偷精品视频免| 国产日韩精品一区二区浪潮av| 欧美疯狂性受xxxxx喷水图片| 成人午夜伦理影院| 亚洲视频一二三| 国产在线麻豆精品观看| 成人午夜激情影院| 欧美三级一区二区| 精品国产乱子伦一区| 欧美日韩一区国产| 久久久午夜精品理论片中文字幕| 最好看的中文字幕久久| 蜜臀久久99精品久久久久宅男| 亚洲综合无码一区二区| 精品久久久久久无| 日韩久久久精品| 亚洲品质自拍视频网站| 综合婷婷亚洲小说| 精品夜夜嗨av一区二区三区| 蜜臀久久久99精品久久久久久| 不卡的av电影在线观看| 成人性生交大片免费看中文| 88在线观看91蜜桃国自产| 日韩一级完整毛片| 日韩一区在线免费观看| 久久免费国产精品| 亚洲国产视频一区| 91精品国产综合久久精品app| www.亚洲精品| 喷白浆一区二区| 日本视频一区二区| 国产一区视频导航| 精品精品国产高清a毛片牛牛| 日韩国产一二三区| 欧美国产一区视频在线观看| 欧美伊人久久久久久久久影院 | 色婷婷亚洲一区二区三区| 亚洲一二三区在线观看| 欧美成人a在线| 不卡一区二区在线| 国产很黄免费观看久久| 中文字幕制服丝袜一区二区三区| 日韩高清一区二区| 国产色综合一区| 欧美性猛交xxxx乱大交退制版| 奇米精品一区二区三区在线观看一| 久久久www免费人成精品| 在线观看视频一区二区| 一区二区三区在线免费播放| 不卡视频免费播放| 奇米777欧美一区二区| 亚洲欧洲日韩一区二区三区| 欧美一区二区在线免费观看| 成人性视频网站| 久久精品国产免费| 精品国产91九色蝌蚪| 91在线视频免费观看| 亚洲免费电影在线| 欧美精品一区二区三区久久久| 色婷婷一区二区| 成人夜色视频网站在线观看| 久久91精品久久久久久秒播| 一区二区三区久久久| 中文字幕不卡在线| 亚洲精品一区二区三区蜜桃下载| 在线精品观看国产| www..com久久爱| 国产精品123区| 日本美女一区二区三区| 亚洲最新在线观看| 成人欧美一区二区三区视频网页| 精品国产91洋老外米糕| 欧美一区二区三区的| 色婷婷av一区二区三区之一色屋| 成人视屏免费看| 国产一区二区三区香蕉| 三级影片在线观看欧美日韩一区二区 | 日韩免费视频一区二区| 欧美在线短视频| 91蜜桃视频在线| 丝袜亚洲另类欧美| 一区二区三区**美女毛片| 亚洲国产经典视频| 中文在线一区二区| 国产精品丝袜黑色高跟| 欧美国产丝袜视频| 中文在线一区二区| 亚洲欧美日韩国产中文在线| 国产精品久久久久久亚洲伦| 亚洲欧洲成人av每日更新| 国产精品三级av在线播放| 国产日产欧产精品推荐色| 日本一区二区三级电影在线观看| 国产精品久久久久影院色老大| 久久亚洲综合色| 99精品桃花视频在线观看| 成人国产精品免费观看| 99re这里只有精品6| 91久久精品一区二区| 国产精品综合一区二区三区| 亚洲图片欧美综合| 亚洲国产色一区| 日韩电影在线免费| 国产精品资源在线观看| gogogo免费视频观看亚洲一| 91精品91久久久中77777| 欧美精三区欧美精三区 | 91香蕉视频mp4| 欧美三级韩国三级日本一级| 欧美久久久一区| 国产亚洲精品超碰| 亚洲婷婷在线视频| 日韩精品电影在线观看| 国产精品一区二区黑丝| 一本色道久久综合精品竹菊| 在线播放91灌醉迷j高跟美女| 日韩精品一区二区三区老鸭窝| 国产视频在线观看一区二区三区| 亚洲视频你懂的| 蜜臀久久久99精品久久久久久| 国产成人在线观看| 欧美乱妇15p| 久久久久国色av免费看影院| 樱花影视一区二区| 日韩一区欧美一区| 日韩av在线播放中文字幕| 国产黄人亚洲片| 337p亚洲精品色噜噜| 国产精品天美传媒| 日韩福利视频导航| 色综合天天综合网天天狠天天| 欧美不卡一区二区| 亚洲精品国产精华液| 国产综合色视频| 欧美亚洲国产bt| 国产欧美精品一区aⅴ影院| 偷拍亚洲欧洲综合| 色综合久久久久综合99| 国产精品久久久久四虎| 亚洲免费在线观看视频| 日韩国产欧美三级| av电影天堂一区二区在线| 日韩视频永久免费| 国产在线精品视频| 欧美色电影在线| 最好看的中文字幕久久| 国产伦精品一区二区三区免费迷 | 国产精品中文字幕日韩精品| 在线视频欧美精品| 中文字幕av一区二区三区高| 日本视频在线一区| 欧美日韩专区在线| 亚洲欧洲av一区二区三区久久| 国内一区二区视频| 日韩一区二区精品在线观看| 亚洲综合色视频| 97久久精品人人做人人爽50路| 国产欧美日产一区| 国产精品一区二区在线播放 | 欧美日韩国产片| 91精品国产综合久久福利| 亚洲靠逼com| 99久久久精品| 中文字幕人成不卡一区| 波多野结衣中文一区| 欧美激情一二三区| 成人毛片老司机大片| 国产精品私人自拍| 成人性生交大片| 久久久噜噜噜久久中文字幕色伊伊| 视频一区视频二区中文字幕| 欧美精品乱码久久久久久| 亚洲成人午夜影院| 制服丝袜中文字幕一区| 免费在线观看视频一区|