CartoType C++ API 8.8-7-gb35e4dc71
for Windows, Linux, Qt and other platforms supporting C++ development
Public Member Functions | List of all members
CartoTypeCore::MemoryOutputStream Class Reference

#include <cartotype_stream.h>

Inheritance diagram for CartoTypeCore::MemoryOutputStream:
CartoTypeCore::OutputStream

Public Member Functions

 MemoryOutputStream (size_t aInitialBufferSize=0)
 
void Write (const uint8_t *aBuffer, size_t aBytes) override
 
const uint8_t * Data () const
 
std::vector< uint8_t > RemoveData ()
 
size_t Length () const
 
- Public Member Functions inherited from CartoTypeCore::OutputStream
virtual ~OutputStream ()
 
virtual void Write (const uint8_t *aBuffer, size_t aBytes)=0
 
void WriteString (const char *aString)
 
void WriteString (const std::string &aString)
 
void WriteString (const MString &aString)
 
void WriteXmlText (const MString &aString)
 
void WriteUint8 (uint8_t aValue)
 
void WriteUint16 (uint16_t aValue)
 
void WriteUint16LE (uint16_t aValue)
 
void WriteUint32 (uint32_t aValue)
 
void WriteUint32LE (uint32_t aValue)
 
void WriteUint (uint32_t aValue, int32_t aSize)
 
void WriteUintLE (uint32_t aValue, int32_t aSize)
 
void WriteUint (uint64_t aValue)
 
void WriteInt (int64_t aValue)
 
void WriteFloat (float aValue)
 
void WriteFloatLE (float aValue)
 
void WriteDouble (double aValue)
 
void WriteDoubleLE (double aValue)
 
void WriteUtf8StringWithLength (const MString &aString)
 
void WriteUtf8StringWithLength (const std::string &aString)
 
void WriteNullTerminatedString (const MString &aString)
 

Detailed Description

Output stream for a buffer in memory. The caller specifies the initial size of the buffer, which is automatically enlarged when necessary.

Constructor & Destructor Documentation

◆ MemoryOutputStream()

CartoTypeCore::MemoryOutputStream::MemoryOutputStream ( size_t  aInitialBufferSize = 0)
inline

Creates a MemoryOutputStream object to write to a buffer owned by it, optionally specifying an initial buffer size in bytes.

Member Function Documentation

◆ Data()

const uint8_t * CartoTypeCore::MemoryOutputStream::Data ( ) const
inline

Return a pointer to the memory buffer.

◆ Length()

size_t CartoTypeCore::MemoryOutputStream::Length ( ) const
inline

Return the number of bytes written.

◆ RemoveData()

std::vector< uint8_t > CartoTypeCore::MemoryOutputStream::RemoveData ( )
inline

Take ownership of the data.

◆ Write()

void CartoTypeCore::MemoryOutputStream::Write ( const uint8_t *  aBuffer,
size_t  aBytes 
)
overridevirtual

Writes aBytes bytes from aBuffer to the stream.

Implements CartoTypeCore::OutputStream.


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