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

IAsyncIOStream Class Reference
[InterfacesI/O StreamsAsynchronous I/OProtected destructors on abstract base classes]

Inheritance diagram for IAsyncIOStream:
Collaboration diagram for IAsyncIOStream:

List of all members.


Detailed Description

An interface onto an asynchrnonous I/O stream. Calls to Write() are not guaranteed to have completed when the call returns and calls to Read() simply request that a Read() happens and do not, in any way, result in incoming data being placed in the provided buffer before the call returns. Objects that implement this interface must provide another way to provide the caller with the data that is read from the stream when the read actually completes.

Public Types

typedef unsigned long DataLength

Public Member Functions

virtual void Read ()=0
virtual void Read (CSmartBuffer &buffer)=0
virtual void Read (IBuffer *pBuffer)=0
virtual void Write (const char *pData, DataLength dataLength)=0
virtual void Write (const BYTE *pData, DataLength dataLength)=0
virtual void Write (CSmartBuffer &buffer)=0
virtual void Write (IIterateableBufferChain &buffers)=0

Protected Member Functions

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

Member Typedef Documentation

typedef unsigned long DataLength [inherited]


Constructor & Destructor Documentation

~IAsyncIOStream (  )  [override, protected]

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


Member Function Documentation

virtual void Read ( IBuffer *  pBuffer  )  [pure virtual]

virtual void Write ( const char *  pData,
DataLength  dataLength 
) [pure virtual]

virtual void Write ( const BYTE pData,
DataLength  dataLength 
) [pure virtual]


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