// BufferedSocket.h: interface for the CBufferedSocket class. // ////////////////////////////////////////////////////////////////////// #pragma once #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; };