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

IBufferChain Class Reference
[InterfacesOpaque user dataI/O BuffersAsynchronous I/OProtected destructors on abstract base classes]

Inheritance diagram for IBufferChain:
Collaboration diagram for IBufferChain:

List of all members.

Public Types

typedef ULONG_PTR UserData

Public Member Functions

virtual bool CanStoreNulls () const =0
virtual bool IsEmpty () const =0
virtual size_t Size () const =0
virtual size_t TotalBytes () const =0
virtual size_t AvailableSpace () const =0
virtual bool HasAvailableSpace () const =0
virtual void GetTotalBytesAndAvailableSpace (size_t &totalBytes, size_t &availableSpace) const =0
virtual size_t Purge ()=0
virtual size_t Purge (IHandlePurgedBufferRelease &purgeHandler, UserData userData)=0
virtual void Add (CSmartBuffer &buffer)=0
virtual CSmartBuffer GetNext (CSmartBuffer &buffer)=0
virtual CSmartBuffer GetNext ()=0
virtual bool TryAdd (CSmartBuffer &buffer)
virtual CSmartBuffer TryGetNext (CSmartBuffer &buffer, bool &inserted)

Static Public Attributes

static const
JetByteTools::Core::IIndexedOpaqueUserData::UserDataIndex 
UseDefaultUserDataIndex = static_cast<JetByteTools::Core::IIndexedOpaqueUserData::UserDataIndex>(-1)

Protected Member Functions

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

Static Protected Member Functions

static
JetByteTools::Core::IIndexedOpaqueUserData::UserDataIndex 
GetNextBufferIndex (JetByteTools::Core::IIndexedOpaqueUserData::UserDataIndex nextBufferIndex)

Classes

class  IHandlePurgedBufferRelease


Member Typedef Documentation


Constructor & Destructor Documentation

virtual ~IBufferChain (  )  [protected, virtual]

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


Member Function Documentation

virtual bool CanStoreNulls (  )  const [pure virtual]

virtual bool IsEmpty (  )  const [pure virtual]

virtual size_t Size (  )  const [pure virtual]

virtual size_t TotalBytes (  )  const [pure virtual]

virtual size_t AvailableSpace (  )  const [pure virtual]

virtual bool HasAvailableSpace (  )  const [pure virtual]

virtual void GetTotalBytesAndAvailableSpace ( size_t &  totalBytes,
size_t &  availableSpace 
) const [pure virtual]

virtual size_t Purge (  )  [pure virtual]

virtual size_t Purge ( IHandlePurgedBufferRelease purgeHandler,
UserData  userData 
) [pure virtual]

virtual void Add ( CSmartBuffer buffer  )  [pure virtual]

virtual CSmartBuffer GetNext ( CSmartBuffer buffer  )  [pure virtual]

virtual CSmartBuffer GetNext (  )  [pure virtual]

virtual bool TryAdd ( CSmartBuffer buffer  )  [inline, virtual]

Reimplemented in CSortedBufferChain.

virtual CSmartBuffer TryGetNext ( CSmartBuffer buffer,
bool inserted 
) [inline, virtual]

Reimplemented in CSortedBufferChain.


Member Data Documentation


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