Avro C++
Public Member Functions | Protected Member Functions | List of all members
avro::OutputStream Class Referenceabstract

A no-copy output stream. More...

#include <Stream.hh>

Inheritance diagram for avro::OutputStream:

Public Member Functions

virtual ~OutputStream ()=default
 Destructor.
 
virtual bool next (uint8_t **data, size_t *len)=0
 Returns a buffer that can be written into. More...
 
virtual void backup (size_t len)=0
 "Returns" back to the stream some of the buffer obtained from in the last call to next().
 
virtual uint64_t byteCount () const =0
 Number of bytes written so far into this stream. More...
 
virtual void flush ()=0
 Flushes any data remaining in the buffer to the stream's underlying store, if any.
 

Protected Member Functions

 OutputStream ()=default
 An empty constructor.
 

Detailed Description

A no-copy output stream.

Member Function Documentation

◆ byteCount()

virtual uint64_t avro::OutputStream::byteCount ( ) const
pure virtual

Number of bytes written so far into this stream.

The whole buffer returned by next() is assumed to be written unless some of it was returned using backup().

Referenced by avro::StreamWriter::byteCount().

◆ next()

virtual bool avro::OutputStream::next ( uint8_t **  data,
size_t *  len 
)
pure virtual

Returns a buffer that can be written into.

On successful return, data has the pointer to the buffer and len has the number of bytes available at data.

Referenced by avro::StreamWriter::more().


The documentation for this class was generated from the following file: