Base Framework
Public Member Functions | Protected Attributes | List of all members
FilterOutputStream Class Reference

Filter output stream. More...

#include <base/io/FilterOutputStream.h>

Inherits Object, and OutputStream.

Inherited by BufferedOutputStream, and PrimitiveOutputStream.

Public Member Functions

 FilterOutputStream (OutputStream &out)
 
OutputStreamgetOutputStream () noexcept
 
void close ()
 
void flush ()
 
unsigned int write (const uint8 *buffer, unsigned int size, bool nonblocking=false)
 
- Public Member Functions inherited from Stream
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 ()
 

Protected Attributes

OutputStreamout
 

Detailed Description

Filter output stream.

A FilterOutputStream redirects requests to an ordinary OutputStream possibly transforming data and providing additional functionality in the process. A FilterOutputStream is itself an OutputStream.

Version
1.0

Constructor & Destructor Documentation

◆ FilterOutputStream()

FilterOutputStream::FilterOutputStream ( OutputStream out)
explicit

Initializes the filter output stream.

Parameters
outOutput stream to be filtered.

Member Function Documentation

◆ close()

void FilterOutputStream::close ( )
virtual

Closes the output stream and releases any system resources associated with the stream.

Implements Stream.

◆ flush()

void FilterOutputStream::flush ( )
virtual

Forces any buffered bytes to be written out.

Implements OutputStream.

Reimplemented in StringOutputStream.

◆ getOutputStream()

OutputStream& FilterOutputStream::getOutputStream ( )
inlinenoexcept

Returns the output stream.

◆ write()

unsigned int FilterOutputStream::write ( const uint8 *  buffer,
unsigned int  size,
bool  nonblocking = false 
)
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. Default is false.
Returns
The actual number of bytes written to the stream.

Implements OutputStream.

Member Data Documentation

◆ out

OutputStream& FilterOutputStream::out
protected

Output stream to be filtered.