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_)