![]() |
XII Release 0.1.0
|
Interface for binary in (read) streams. More...
#include <Stream.h>
Public Member Functions | |
xiiStreamReader () | |
Constructor. | |
virtual | ~xiiStreamReader () |
Virtual destructor to ensure correct cleanup. | |
virtual xiiUInt64 | ReadBytes (void *pReadBuffer, xiiUInt64 uiBytesToRead)=0 |
Reads a raw number of bytes into the read buffer, this is the only method which has to be implemented to fully implement the interface. | |
template<typename T> | |
xiiResult | ReadWordValue (T *pWordValue) |
Helper method to read a word value correctly (copes with potentially different endianess). | |
template<typename T> | |
xiiResult | ReadDWordValue (T *pDWordValue) |
Helper method to read a dword value correctly (copes with potentially different endianess). | |
template<typename T> | |
xiiResult | ReadQWordValue (T *pQWordValue) |
Helper method to read a qword value correctly (copes with potentially different endianess). | |
template<typename ArrayType, typename ValueType> | |
xiiResult | ReadArray (xiiArrayBase< ValueType, ArrayType > &ref_array) |
Reads an array of elements from the stream. | |
template<typename ValueType, xiiUInt16 uiSize, typename AllocatorWrapper> | |
xiiResult | ReadArray (xiiSmallArray< ValueType, uiSize, AllocatorWrapper > &ref_array) |
Reads a small array of elements from the stream. | |
template<typename ValueType, xiiUInt32 uiSize> | |
xiiResult | ReadArray (ValueType(&array)[uiSize]) |
Writes a C style fixed array. | |
template<typename KeyType, typename Comparer> | |
xiiResult | ReadSet (xiiSetBase< KeyType, Comparer > &ref_set) |
Reads a set. | |
template<typename KeyType, typename ValueType, typename Comparer> | |
xiiResult | ReadMap (xiiMapBase< KeyType, ValueType, Comparer > &ref_map) |
Reads a map. | |
template<typename KeyType, typename ValueType, typename Hasher> | |
xiiResult | ReadHashTable (xiiHashTableBase< KeyType, ValueType, Hasher > &ref_hashTable) |
Read a hash table (note that the entry order is not stable). | |
xiiResult | ReadString (xiiStringBuilder &ref_sBuilder) |
Reads a string into a xiiStringBuilder. | |
xiiResult | ReadString (xiiString &ref_sString) |
Reads a string into a xiiString. | |
virtual xiiUInt64 | SkipBytes (xiiUInt64 uiBytesToSkip) |
Helper method to skip a number of bytes (implementations of the stream reader may implement this more efficiently for example). | |
XII_ALWAYS_INLINE xiiTypeVersion | ReadVersion (xiiTypeVersion expectedMaxVersion) |
Interface for binary in (read) streams.
|
pure virtual |
Reads a raw number of bytes into the read buffer, this is the only method which has to be implemented to fully implement the interface.
Implemented in xiiChunkStreamReader, xiiFileReader, xiiMemoryStreamReader, xiiRawMemoryStreamReader, and xiiStreamReaderWithStats.
|
inlinevirtual |
Helper method to skip a number of bytes (implementations of the stream reader may implement this more efficiently for example).
Reimplemented in xiiFileReader, xiiMemoryStreamReader, xiiRawMemoryStreamReader, and xiiStreamReaderWithStats.