Logo
~Sockets~
~Examples~
~Contact~


SocketStream Class Reference

#include <SocketStream.h>

Inheritance diagram for SocketStream:
Collaboration diagram for SocketStream:

List of all members.


Public Member Functions

 SocketStream (ISocketHandler &h, TcpSocket *sock)
size_t IStreamRead (char *buf, size_t max_sz)
 Try to read 'buf_sz' number of bytes from source.
void IStreamWrite (const char *buf, size_t sz)
 Write 'sz' bytes to destination.

Private Attributes

ISocketHandlerm_handler
TcpSocketm_socket
socketuid_t m_socket_uid

Detailed Description

Definition at line 47 of file SocketStream.h.


Constructor & Destructor Documentation

SocketStream::SocketStream ( ISocketHandler h,
TcpSocket sock 
)

Definition at line 42 of file SocketStream.cpp.

00042                                                              : m_handler(h), m_socket(sock)
00043 , m_socket_uid(sock -> UniqueIdentifier())
00044 {
00045 }


Member Function Documentation

size_t SocketStream::IStreamRead ( char *  buf,
size_t  buf_sz 
) [virtual]

Try to read 'buf_sz' number of bytes from source.

Returns:
Number of bytes actually read.

Implements IStream.

Definition at line 48 of file SocketStream.cpp.

References m_handler, m_socket, m_socket_uid, and ISocketHandler::Valid().

00049 {
00050   if (m_handler.Valid(m_socket_uid))
00051   {
00052     return m_socket -> ReadInput(buf, max_sz);
00053   }
00054   return 0;
00055 }

void SocketStream::IStreamWrite ( const char *  buf,
size_t  sz 
) [virtual]

Write 'sz' bytes to destination.

Implements IStream.

Definition at line 58 of file SocketStream.cpp.

References m_handler, m_socket, m_socket_uid, and ISocketHandler::Valid().

00059 {
00060   if (m_handler.Valid(m_socket_uid))
00061   {
00062     m_socket -> SendBuf(buf, sz);
00063   }
00064 }


Member Data Documentation

Definition at line 57 of file SocketStream.h.

Referenced by IStreamRead(), and IStreamWrite().

Definition at line 58 of file SocketStream.h.

Referenced by IStreamRead(), and IStreamWrite().

Definition at line 59 of file SocketStream.h.

Referenced by IStreamRead(), and IStreamWrite().


The documentation for this class was generated from the following files:
Page, code, and content Copyright (C) 2007 by Anders Hedström
Generated for C++ Sockets by  doxygen 1.4.4