Base Framework
Public Member Functions | List of all members
OutputStream Class Referenceabstract

Output stream. More...

#include <base/io/OutputStream.h>

Inherits Stream.

Inherited by FileDescriptorOutputStream [virtual], FileOutputStream, FilterOutputStream [virtual], MemoryOutputStream, Pipe [virtual], StreamSocket [virtual], StringOutputStreamWrapper [virtual], and WideStringOutputStreamWrapper [virtual].

Public Member Functions

virtual void flush ()=0
 
virtual unsigned int write (const uint8 *buffer, unsigned int size, bool nonblocking)=0
 
- Public Member Functions inherited from Stream
virtual void close ()=0
 
virtual ~Stream () noexcept(false)
 
- Public Member Functions inherited from ReferenceCountedObject
 ReferenceCountedObject () noexcept
 
 ReferenceCountedObject (const ReferenceCountedObject &copy) noexcept
 
 ReferenceCountedObject (ReferenceCountedObject &&move) noexcept
 
ReferenceCountedObjectoperator= (const ReferenceCountedObject &copy) noexcept
 
ReferenceCountedObjectoperator= (ReferenceCountedObject &&move) noexcept
 
MemorySize getNumberOfReferences_INTERNAL () const noexcept
 
virtual bool useGarbageCollector () const noexcept
 
- Public Member Functions inherited from DynamicObject
 DynamicObject () noexcept
 
bool isValidObject () const noexcept
 
virtual ~DynamicObject () noexcept(false)
 
 _COM_AZURE_DEV__BASE__OVERRIDE_ALLOC ()
 

Detailed Description

Output stream.

Class representing an output stream of bytes.

Version
1.0

Member Function Documentation

◆ flush()

virtual void OutputStream::flush ( )
pure virtual

◆ write()

virtual unsigned int OutputStream::write ( const uint8 *  buffer,
unsigned int  size,
bool  nonblocking 
)
pure virtual

Writes the specified number of bytes in the buffer to the stream. In blocking mode the method does not return until all bytes have been written. In non-blocking mode the total number of bytes written may be any number below or equal to the requested number of bytes.

Parameters
bufferThe buffer containing the bytes to be written.
sizeThe number of bytes to be written.
nonblockingSpecifies that the method may not block.
Returns
The actual number of bytes written to the stream.

Implemented in MemoryOutputStream, StreamSocket, Pipe, FileDescriptorOutputStream, BufferedOutputStream, FilterOutputStream, StringOutputStreamWrapper, WideStringOutputStreamWrapper, and FileOutputStream.