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

IAllocateBufferHandles Class Reference
[InterfacesI/O BuffersProtected destructors on abstract base classes]

Inheritance diagram for IAllocateBufferHandles:

List of all members.


Detailed Description

An interface to a class that allocates instances of CBufferHandle which can be attached to an instance of an IBuffer.

Public Member Functions

virtual CBufferHandleAllocateHandle ()=0
 Allocate a CBufferHandle, remember to call Release() on it when you're done with it.
virtual CSmartBuffer Allocate (const IBuffer &buffer)=0
 Allocate a CBufferHandle and attach the supplied IBuffer to it, return the CBufferHandle's IBuffer interface, remember to call Release() on it when you're done with it.
virtual bool Flush ()=0
 Flushes the allocator. Use with care as this forces active buffer handles to be released and destroyed! Generally only called as part of process cleanup and even then only to aid in buffer leak tracking.

Protected Member Functions

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

Constructor & Destructor Documentation

virtual ~IAllocateBufferHandles (  )  [protected, virtual]

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


Member Function Documentation

virtual CBufferHandle* AllocateHandle (  )  [pure virtual]

Allocate a CBufferHandle, remember to call Release() on it when you're done with it.

Implemented in CBufferHandleAllocator.

virtual CSmartBuffer Allocate ( const IBuffer &  buffer  )  [pure virtual]

Allocate a CBufferHandle and attach the supplied IBuffer to it, return the CBufferHandle's IBuffer interface, remember to call Release() on it when you're done with it.

Implemented in CBufferHandleAllocator.

virtual bool Flush (  )  [pure virtual]

Flushes the allocator. Use with care as this forces active buffer handles to be released and destroyed! Generally only called as part of process cleanup and even then only to aid in buffer leak tracking.

Implemented in CBufferHandleAllocator.


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