// BufferedSocket.h: interface for the CBufferedSocket class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_BUFFEREDSOCKET_H__ECAC808B_3B4D_11D3_8A1E_00A0245B298A__INCLUDED_) #define AFX_BUFFEREDSOCKET_H__ECAC808B_3B4D_11D3_8A1E_00A0245B298A__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "ThreadedSocket.h" class CBufferedSocket : public CThreadedSocket { // DECLARE_DYNAMIC(CBufferedSocket) public: CBufferedSocket(); virtual ~CBufferedSocket(); void OnReceive( int nErrorCode ); void OnSend( int nErrorCode ); void OnConnect(int nErrorCode); void OnWakeup(); virtual void OnReceive( char *line ); virtual void Accept(CBufferedSocket& rConnectedSocket, SOCKADDR* lpSockAddr = NULL, int* lpSockAddrLen = NULL); void SetSeparator( char sep ); void Send ( const char * data ); protected: bool connected; /* wait to be connected before sending any Data */ char separator; /* buffer de reception de l'application */ #define MAX_BUFFER 2048 // MAX_BUFFER +1 pour ajouter \0 a la fin char buf[MAX_BUFFER+1]; char *ptr; // Buffer Emission CRITICAL_SECTION m_CritSection; list buf_out; }; #endif // !defined(AFX_BUFFEREDSOCKET_H__ECAC808B_3B4D_11D3_8A1E_00A0245B298A__INCLUDED_)