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

A no-copy input stream. More...

#include <Stream.hh>

Inheritance diagram for avro::InputStream:
avro::SeekableInputStream

Public Member Functions

virtual ~InputStream ()=default
 Destructor.
 
virtual bool next (const uint8_t **data, size_t *len)=0
 Returns some of available data. More...
 
virtual void backup (size_t len)=0
 "Returns" back some of the data to the stream. More...
 
virtual void skip (size_t len)=0
 Skips number of bytes specified by len.
 
virtual size_t byteCount () const =0
 Returns the number of bytes read from this stream so far. More...
 

Protected Member Functions

 InputStream ()=default
 An empty constructor.
 

Detailed Description

A no-copy input stream.

Member Function Documentation

◆ backup()

virtual void avro::InputStream::backup ( size_t  len)
pure virtual

"Returns" back some of the data to the stream.

The returned data must be less than what was obtained in the last call to next().

Referenced by avro::StreamReader::drain(), and avro::StreamReader::reset().

◆ byteCount()

virtual size_t avro::InputStream::byteCount ( ) const
pure virtual

Returns the number of bytes read from this stream so far.

All the bytes made available through next are considered to be used unless, returned back using backup.

◆ next()

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

Returns some of available data.

Returns true if some data is available, false if no more data is available or an error has occurred.

Referenced by avro::copy(), and avro::StreamReader::fill().


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