IDatagramSocketConnectionManager Class Reference
[Datagram SocketsInterfacesProtected destructors on abstract base classes]

Inheritance diagram for IDatagramSocketConnectionManager:

Inheritance graph
[legend]
Collaboration diagram for IDatagramSocketConnectionManager:

Collaboration graph
[legend]

List of all members.


Detailed Description

An interface that is used to allow a socket to communicate with the connection manager that manages it. This interface is supplied to the socket in the call to Attach().

Public Member Functions

virtual void HandleOperation (IDatagramSocketEx &socket, JetByteTools::IO::IBuffer &buffer, const DWORD ioSize, const DWORD lastError)=0
 Handles an I/O operation.
virtual void ReleaseSocket (IPoolableSocket &socket)=0
 Used to pass the socket back to the allocator when its reference count reaches 0.
virtual void RequestRead (IDatagramSocketEx &socket, JetByteTools::IO::IBuffer *pBuffer)=0
virtual void RequestRecvFrom (IDatagramSocketEx &socket, JetByteTools::IO::IBuffer *pBuffer)=0
virtual void RequestWrite (IDatagramSocketEx &socket, JetByteTools::IO::IBuffer &buffer)=0
virtual void RequestSendTo (IDatagramSocketEx &socket, const IAddress &address, JetByteTools::IO::IBuffer &buffer)=0
virtual
JetByteTools::IO::IBuffer
AllocateBuffer ()=0
 Allows the socket to access the buffer allocator that is being used by the manager so that it can generate write calls using the correct buffers. These write calls are the result of the non buffer based Write() and TryWrite(), etc methods being called.
virtual void OnConnectionReset (IDatagramSocketEx &socket, const DWORD lastError)=0
 Called by the socket when a OnConnectionConnectionReset event is detected. Allows the manager to dispatch the event to the thread pool so that it occurs when the socket is not holding its internal lock.

Protected Member Functions

 ~IDatagramSocketConnectionManager ()
 We never delete instances of this interface; you must manage the lifetime of the class that implements it.

Constructor & Destructor Documentation

~IDatagramSocketConnectionManager (  )  [inline, protected]

We never delete instances of this interface; you must manage the lifetime of the class that implements it.


Member Function Documentation

virtual void HandleOperation ( IDatagramSocketEx socket,
JetByteTools::IO::IBuffer buffer,
const DWORD  ioSize,
const DWORD  lastError 
) [pure virtual]

Handles an I/O operation.

Implemented in CDatagramSocketConnectionManager.

virtual void ReleaseSocket ( IPoolableSocket socket  )  [pure virtual]

Used to pass the socket back to the allocator when its reference count reaches 0.

Implemented in CDatagramSocketConnectionManager.

virtual void RequestRead ( IDatagramSocketEx socket,
JetByteTools::IO::IBuffer pBuffer 
) [pure virtual]

Implemented in CDatagramSocketConnectionManager.

virtual void RequestRecvFrom ( IDatagramSocketEx socket,
JetByteTools::IO::IBuffer pBuffer 
) [pure virtual]

Implemented in CDatagramSocketConnectionManager.

virtual void RequestWrite ( IDatagramSocketEx socket,
JetByteTools::IO::IBuffer buffer 
) [pure virtual]

Implemented in CDatagramSocketConnectionManager.

virtual void RequestSendTo ( IDatagramSocketEx socket,
const IAddress address,
JetByteTools::IO::IBuffer buffer 
) [pure virtual]

Implemented in CDatagramSocketConnectionManager.

virtual JetByteTools::IO::IBuffer* AllocateBuffer (  )  [pure virtual]

Allows the socket to access the buffer allocator that is being used by the manager so that it can generate write calls using the correct buffers. These write calls are the result of the non buffer based Write() and TryWrite(), etc methods being called.

Implemented in CDatagramSocketConnectionManager.

virtual void OnConnectionReset ( IDatagramSocketEx socket,
const DWORD  lastError 
) [pure virtual]

Called by the socket when a OnConnectionConnectionReset event is detected. Allows the manager to dispatch the event to the thread pool so that it occurs when the socket is not holding its internal lock.

Implemented in CDatagramSocketConnectionManager.


Generated on Thu Mar 26 16:40:00 2009 for JetByte Socket Tools - v6.0 by  doxygen 1.5.3