The C++ framework for developing highly scalable, high performance servers on Windows platforms.

IManageDatagramSocketConnectionFilters Class Reference
[Datagram SocketsInterfacesFilteringProtected destructors on abstract base classes]

Inheritance diagram for IManageDatagramSocketConnectionFilters:

List of all members.


Detailed Description

This interface works in conjunction with IFilterDatagramSocketConnections to allow datagram filters to issue new read and write events. Any filter that either can swallow data buffers (by not passing on calls to the next filter in the chain) or that generates data buffers (passing data to the next filter in the chain when that data wasn't generated by a previous layer in the chain) should always use this interface to pass data buffers to the next layer in the chain. Failure to do so will affect any additional filter processing that may (or may not) be occurring.

Public Member Functions

virtual void RequestRead (IFilterableDatagramSocket &socket, JetByteTools::IO::CSmartBuffer &buffer, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a read request and pass it to the next filter in the chain.
virtual void ReadCompleted (IFilterableDatagramSocket &socket, JetByteTools::IO::CSmartBuffer &buffer, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a read completion and pass it to the next filter in the chain.
virtual void RequestRecvFrom (IFilterableDatagramSocket &socket, JetByteTools::IO::CSmartBuffer &buffer, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a RecvFrom request and pass it to the next filter in the chain.
virtual void RecvFromCompleted (IFilterableDatagramSocket &socket, const IAddress &address, JetByteTools::IO::CSmartBuffer &buffer, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a RecvFrom completion and pass it to the next filter in the chain.
virtual void RequestWrite (IFilterableDatagramSocket &socket, JetByteTools::IO::CSmartBuffer &buffer, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a write request and pass it to the next filter in the chain.
virtual void WriteCompleted (IFilterableDatagramSocket &socket, JetByteTools::IO::CSmartBuffer &buffer, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a Write completion and pass it to the next filter in the chain.
virtual void WriteCompletionError (IFilterableDatagramSocket &socket, JetByteTools::IO::CSmartBuffer &buffer, DWORD lastError, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a Write completion error and pass it to the next filter in the chain.
virtual void RequestSendTo (IFilterableDatagramSocket &socket, const IAddress &address, JetByteTools::IO::CSmartBuffer &buffer, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a SendTo request and pass it to the next filter in the chain.
virtual void SendToCompleted (IFilterableDatagramSocket &socket, const IAddress &address, JetByteTools::IO::CSmartBuffer &buffer, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a SendTo completion and pass it to the next filter in the chain.
virtual void SendToCompletionError (IFilterableDatagramSocket &socket, const IAddress &address, JetByteTools::IO::CSmartBuffer &buffer, DWORD lastError, IFilterDatagramSocketConnections &requestingFilter)=0
 Generate a SendTo completion error and pass it to the next filter in the chain.

Protected Member Functions

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

Constructor & Destructor Documentation

virtual ~IManageDatagramSocketConnectionFilters (  )  [protected, virtual]

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


Member Function Documentation

virtual void RecvFromCompleted ( IFilterableDatagramSocket socket,
const IAddress address,
JetByteTools::IO::CSmartBuffer buffer,
IFilterDatagramSocketConnections requestingFilter 
) [pure virtual]

virtual void WriteCompletionError ( IFilterableDatagramSocket socket,
JetByteTools::IO::CSmartBuffer buffer,
DWORD  lastError,
IFilterDatagramSocketConnections requestingFilter 
) [pure virtual]

virtual void RequestSendTo ( IFilterableDatagramSocket socket,
const IAddress address,
JetByteTools::IO::CSmartBuffer buffer,
IFilterDatagramSocketConnections requestingFilter 
) [pure virtual]

virtual void SendToCompleted ( IFilterableDatagramSocket socket,
const IAddress address,
JetByteTools::IO::CSmartBuffer buffer,
IFilterDatagramSocketConnections requestingFilter 
) [pure virtual]

virtual void SendToCompletionError ( IFilterableDatagramSocket socket,
const IAddress address,
JetByteTools::IO::CSmartBuffer buffer,
DWORD  lastError,
IFilterDatagramSocketConnections requestingFilter 
) [pure virtual]


Generated on Sun Sep 12 19:10:24 2021 for The Server Framework - v7.4 by doxygen 1.5.3