roo_io
API Documentation for roo_io
Loading...
Searching...
No Matches
roo_io::OutputStreamWriter Class Reference

Buffered typed writer over OutputStream. More...

#include <output_stream_writer.h>

Public Member Functions

 OutputStreamWriter ()
 
 OutputStreamWriter (OutputStreamWriter &&other)
 
OutputStreamWriteroperator= (OutputStreamWriter &&other)
 
 OutputStreamWriter (std::unique_ptr< roo_io::OutputStream > os)
 
 OutputStreamWriter (roo_io::OutputStream &os)
 
 ~OutputStreamWriter ()
 
void reset (std::unique_ptr< roo_io::OutputStream > os)
 
void reset (roo_io::OutputStream &os)
 
bool ok () const
 
void flush ()
 
void close ()
 
Status status () const
 
void write (byte v)
 
void writeU8 (uint8_t v)
 
void writeBeU16 (uint16_t v)
 
void writeLeU16 (uint16_t v)
 
void writeBeU24 (uint32_t v)
 
void writeLeU24 (uint32_t v)
 
void writeBeU32 (uint32_t v)
 
void writeLeU32 (uint32_t v)
 
void writeBeU64 (uint64_t v)
 
void writeLeU64 (uint64_t v)
 
void writeS8 (uint8_t v)
 
void writeBeS16 (uint16_t v)
 
void writeLeS16 (uint16_t v)
 
void writeBeS24 (uint32_t v)
 
void writeLeS24 (uint32_t v)
 
void writeBeS32 (uint32_t v)
 
void writeLeS32 (uint32_t v)
 
void writeBeS64 (uint64_t v)
 
void writeLeS64 (uint64_t v)
 
size_t writeByteArray (const byte *source, size_t count)
 
void writeString (roo::string_view str)
 
template<typename T >
void writeHostNative (const T &v)
 
void writeVarU64 (uint64_t data)
 

Detailed Description

Buffered typed writer over OutputStream.

Uses a 64-byte internal buffer to avoid tiny upstream writes.

Construction with unique_ptr transfers ownership; construction with reference does not.

After constructing this writer, access the stream only through this writer to keep buffer state coherent.

Writer closes the stream on destruction or explicit close().

Definition at line 24 of file output_stream_writer.h.

Constructor & Destructor Documentation

◆ OutputStreamWriter() [1/4]

roo_io::OutputStreamWriter::OutputStreamWriter ( )
inline

Definition at line 26 of file output_stream_writer.h.

◆ OutputStreamWriter() [2/4]

roo_io::OutputStreamWriter::OutputStreamWriter ( OutputStreamWriter &&  other)
inline

Definition at line 28 of file output_stream_writer.h.

◆ OutputStreamWriter() [3/4]

roo_io::OutputStreamWriter::OutputStreamWriter ( std::unique_ptr< roo_io::OutputStream os)
inline

◆ OutputStreamWriter() [4/4]

roo_io::OutputStreamWriter::OutputStreamWriter ( roo_io::OutputStream os)
inline

Definition at line 53 of file output_stream_writer.h.

◆ ~OutputStreamWriter()

roo_io::OutputStreamWriter::~OutputStreamWriter ( )
inline

Definition at line 56 of file output_stream_writer.h.

References close().

Member Function Documentation

◆ close()

void roo_io::OutputStreamWriter::close ( )
inline

◆ flush()

void roo_io::OutputStreamWriter::flush ( )
inline

◆ ok()

bool roo_io::OutputStreamWriter::ok ( ) const
inline

Definition at line 94 of file output_stream_writer.h.

References roo_io::BufferedOutputStreamIterator::ok().

◆ operator=()

OutputStreamWriter & roo_io::OutputStreamWriter::operator= ( OutputStreamWriter &&  other)
inline

Definition at line 35 of file output_stream_writer.h.

References close().

◆ reset() [1/2]

void roo_io::OutputStreamWriter::reset ( roo_io::OutputStream os)
inline

◆ reset() [2/2]

void roo_io::OutputStreamWriter::reset ( std::unique_ptr< roo_io::OutputStream os)
inline

◆ status()

Status roo_io::OutputStreamWriter::status ( ) const
inline

◆ write()

void roo_io::OutputStreamWriter::write ( byte  v)
inline

◆ writeBeS16()

void roo_io::OutputStreamWriter::writeBeS16 ( uint16_t  v)
inline

Definition at line 141 of file output_stream_writer.h.

References roo_io::WriteBeS16().

◆ writeBeS24()

void roo_io::OutputStreamWriter::writeBeS24 ( uint32_t  v)
inline

Definition at line 145 of file output_stream_writer.h.

References roo_io::WriteBeS24().

◆ writeBeS32()

void roo_io::OutputStreamWriter::writeBeS32 ( uint32_t  v)
inline

Definition at line 149 of file output_stream_writer.h.

References roo_io::WriteBeS32().

◆ writeBeS64()

void roo_io::OutputStreamWriter::writeBeS64 ( uint64_t  v)
inline

Definition at line 153 of file output_stream_writer.h.

References roo_io::WriteBeS64().

◆ writeBeU16()

void roo_io::OutputStreamWriter::writeBeU16 ( uint16_t  v)
inline

Definition at line 123 of file output_stream_writer.h.

References roo_io::WriteBeU16().

◆ writeBeU24()

void roo_io::OutputStreamWriter::writeBeU24 ( uint32_t  v)
inline

Definition at line 127 of file output_stream_writer.h.

References roo_io::WriteBeU24().

◆ writeBeU32()

void roo_io::OutputStreamWriter::writeBeU32 ( uint32_t  v)
inline

Definition at line 131 of file output_stream_writer.h.

References roo_io::WriteBeU32().

◆ writeBeU64()

void roo_io::OutputStreamWriter::writeBeU64 ( uint64_t  v)
inline

Definition at line 135 of file output_stream_writer.h.

References roo_io::WriteBeU64().

◆ writeByteArray()

size_t roo_io::OutputStreamWriter::writeByteArray ( const byte source,
size_t  count 
)
inline

Definition at line 167 of file output_stream_writer.h.

References roo_io::count, and roo_io::WriteByteArray().

◆ writeHostNative()

template<typename T >
void roo_io::OutputStreamWriter::writeHostNative ( const T v)
inline

Definition at line 174 of file output_stream_writer.h.

◆ writeLeS16()

void roo_io::OutputStreamWriter::writeLeS16 ( uint16_t  v)
inline

Definition at line 143 of file output_stream_writer.h.

References roo_io::WriteLeS16().

◆ writeLeS24()

void roo_io::OutputStreamWriter::writeLeS24 ( uint32_t  v)
inline

Definition at line 147 of file output_stream_writer.h.

References roo_io::WriteLeS24().

◆ writeLeS32()

void roo_io::OutputStreamWriter::writeLeS32 ( uint32_t  v)
inline

Definition at line 151 of file output_stream_writer.h.

References roo_io::WriteLeS32().

◆ writeLeS64()

void roo_io::OutputStreamWriter::writeLeS64 ( uint64_t  v)
inline

Definition at line 155 of file output_stream_writer.h.

References roo_io::WriteLeS64().

◆ writeLeU16()

void roo_io::OutputStreamWriter::writeLeU16 ( uint16_t  v)
inline

Definition at line 125 of file output_stream_writer.h.

References roo_io::WriteLeU16().

◆ writeLeU24()

void roo_io::OutputStreamWriter::writeLeU24 ( uint32_t  v)
inline

Definition at line 129 of file output_stream_writer.h.

References roo_io::WriteLeU24().

◆ writeLeU32()

void roo_io::OutputStreamWriter::writeLeU32 ( uint32_t  v)
inline

Definition at line 133 of file output_stream_writer.h.

References roo_io::WriteLeU32().

◆ writeLeU64()

void roo_io::OutputStreamWriter::writeLeU64 ( uint64_t  v)
inline

Definition at line 137 of file output_stream_writer.h.

References roo_io::WriteLeU64().

◆ writeS8()

void roo_io::OutputStreamWriter::writeS8 ( uint8_t  v)
inline

Definition at line 139 of file output_stream_writer.h.

References roo_io::WriteS8().

◆ writeString()

void roo_io::OutputStreamWriter::writeString ( roo::string_view  str)
inline

Definition at line 171 of file output_stream_writer.h.

References roo_io::WriteString().

◆ writeU8()

void roo_io::OutputStreamWriter::writeU8 ( uint8_t  v)
inline

Definition at line 121 of file output_stream_writer.h.

References roo_io::WriteU8().

◆ writeVarU64()

void roo_io::OutputStreamWriter::writeVarU64 ( uint64_t  data)
inline

Definition at line 178 of file output_stream_writer.h.

References roo_io::WriteVarU64().


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