www.pudn.com > Fronter_xie3.rar > ConnectTestGBSocket.h


// ConnectTestGBSocket.h: interface for the CConnectTestGBSocket class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_CONNECTTESTGBSOCKET_H__26659F34_D61F_4221_81A9_EA81F6F136AB__INCLUDED_) 
#define AFX_CONNECTTESTGBSOCKET_H__26659F34_D61F_4221_81A9_EA81F6F136AB__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
class CConnectTestGBSocket   
{ 
friend UINT TestGBLocalSocketThread(void* pvPara); 
 
public: 
	CConnectTestGBSocket(); 
	virtual ~CConnectTestGBSocket(); 
 
private: 
	SOCKET m_Localsockfd; 
	bool m_fConnected; 
	bool m_fExit; 
	bool m_fExitDone; 
	int m_index; 
	bool m_bFlush; 
	int m_Cl790Dindex; 
	SOCKET m_Cl790DLocalsockfd; 
	bool m_cl790DValid; 
 
	BYTE RecvCycPool[ GB_FRM_SIZE ]; 
	WORD wRecvCycPoolSize,wRecvCycPoolHead,wRecvCycPoolTail; 
	BYTE m_bRxBuf[GB_FRM_SIZE]; 
	WORD m_wRxPtr, m_nRxCnt, m_nRxStep,	m_wRxFrmLen; 
    GBMsg	TxMsg; 
    GBMsg	TxPrmMsg; 
    GBMsg	RxMsg;   
	GBCommInfo_T GBCommInfo; 
	 
public: 
	bool Send(BYTE* pbTxBuf, WORD wLen); 
	WORD Receive(BYTE* pbTxBuf, WORD wLen); 
	bool VeryRxFrm(const BYTE *pRxBufStart,WORD wRxLen); 
	bool SearchOneFrame(BYTE **pRxFrmStart,WORD *wRxLen); 
	int RcvBlock(BYTE* pbBlock, int nLen); 
	int ReceiveTask(); 
	int SearchCl790DSocket(); 
 
}; 
typedef struct 
{ 
	bool     TestGB_Valid; 
	char     cl790D_GBAddress[20]; 
	char     TestGB_GBAddress[20]; 
	char     TestGB_MainIP[20]; 
	SOCKET 	 TestGB_SOCKET; 
	CConnectTestGBSocket pFapLocal; 
}TestGBPara_Address; 
#endif // !defined(AFX_CONNECTTESTGBSOCKET_H__26659F34_D61F_4221_81A9_EA81F6F136AB__INCLUDED_)