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

IFilterableDatagramSocket Class Reference
[SocketsInterfacesProtected destructors on abstract base classes]

Inheritance diagram for IFilterableDatagramSocket:
Collaboration diagram for IFilterableDatagramSocket:

List of all members.


Detailed Description

An interface which adds functionality that is useful when filtering a connection.

Public Types

typedef unsigned short UserDataIndex

Public Member Functions

virtual void WriteCompleted ()=0
virtual CAddress GetLocalAddress () const =0
virtual CAddress GetRemoteAddress () const =0
CSmartBuffer Allocate () override=0
 Allocate an instance of IBuffer, remember to call Release() on it when you're done with it.
virtual CSmartBuffer Allocate (IAllocateBuffer &allocator)=0
CSmartBuffer AllocateCustomSizedBuffer (IBuffer::BufferSize bufferSize) override=0
virtual CSmartBuffer AllocateCustomSizedBuffer (IAllocateBuffer &allocator, IBuffer::BufferSize bufferSize)=0
virtual void AddBufferToPool (IBuffer &buffer)=0
virtual void * GetUserPointer (UserDataIndex index) const =0
 Access the data stored at the specified index as a void pointer.
virtual void SetUserPointer (UserDataIndex index, void *pData)=0
 Update the data stored at the specified index as a void pointer.
virtual ULONG_PTR GetUserData (UserDataIndex index) const =0
 Access the data stored at the specified index as an unsigned long.
virtual void SetUserData (UserDataIndex index, ULONG_PTR data)=0
 Update the data stored at the specified index as an unsigned long.

Static Public Attributes

static
JETBYTE_CONSTEXPR
UserDataIndex 
InvalidUserDataIndex = 0xFFFF

Protected Member Functions

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

Member Typedef Documentation


Constructor & Destructor Documentation

virtual ~IFilterableDatagramSocket (  )  [protected, virtual]

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


Member Function Documentation

CSmartBuffer AllocateCustomSizedBuffer ( IBuffer::BufferSize  bufferSize  )  [override, pure virtual, inherited]

Implements IAllocateBuffer.

Implemented in CNullBufferPool.

virtual CSmartBuffer AllocateCustomSizedBuffer ( IAllocateBuffer allocator,
IBuffer::BufferSize  bufferSize 
) [pure virtual, inherited]

Implemented in CNullBufferPool.

virtual void AddBufferToPool ( IBuffer &  buffer  )  [pure virtual, inherited]

Implemented in CNullBufferPool.


Member Data Documentation

JETBYTE_CONSTEXPR UserDataIndex InvalidUserDataIndex = 0xFFFF [static, inherited]


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