|
| plChunkStreamReader (plStreamReader &inout_stream) |
| Pass the underlying stream writer to the constructor.
|
|
virtual plUInt64 | ReadBytes (void *pReadBuffer, plUInt64 uiBytesToRead) override |
| Reads bytes directly from the stream. Only allowed while a valid chunk is available. Returns 0 bytes when the end of a chunk is reached, even if there are more chunks to come.
|
|
void | SetEndChunkFileMode (EndChunkFileMode mode) |
|
virtual plUInt16 | BeginStream () |
| Starts reading from the chunk file. Returns the version number that was passed to plChunkStreamWriter::BeginStream().
|
|
virtual void | EndStream () |
| Stops reading from the chunk file. Optionally skips the remaining bytes, so that the underlying streams read position is after the chunk file content.
|
|
const ChunkInfo & | GetCurrentChunk () const |
| Returns information about the current chunk.
|
|
void | NextChunk () |
| Skips the rest of the current chunk and starts reading the next chunk.
|
|
| plStreamReader () |
| Constructor.
|
|
virtual | ~plStreamReader () |
| Virtual destructor to ensure correct cleanup.
|
|
template<typename T > |
plResult | ReadWordValue (T *pWordValue) |
| Helper method to read a word value correctly (copes with potentially different endianess)
|
|
template<typename T > |
plResult | ReadDWordValue (T *pDWordValue) |
| Helper method to read a dword value correctly (copes with potentially different endianess)
|
|
template<typename T > |
plResult | ReadQWordValue (T *pQWordValue) |
| Helper method to read a qword value correctly (copes with potentially different endianess)
|
|
template<typename ArrayType , typename ValueType > |
plResult | ReadArray (plArrayBase< ValueType, ArrayType > &inout_array) |
| Reads an array of elements from the stream.
|
|
template<typename ValueType , plUInt16 uiSize, typename AllocatorWrapper > |
plResult | ReadArray (plSmallArray< ValueType, uiSize, AllocatorWrapper > &ref_array) |
| Reads a small array of elements from the stream.
|
|
template<typename ValueType , plUInt32 uiSize> |
plResult | ReadArray (ValueType(&array)[uiSize]) |
| Writes a C style fixed array.
|
|
template<typename KeyType , typename Comparer > |
plResult | ReadSet (plSetBase< KeyType, Comparer > &inout_set) |
| Reads a set.
|
|
template<typename KeyType , typename ValueType , typename Comparer > |
plResult | ReadMap (plMapBase< KeyType, ValueType, Comparer > &inout_map) |
| Reads a map.
|
|
template<typename KeyType , typename ValueType , typename Hasher > |
plResult | ReadHashTable (plHashTableBase< KeyType, ValueType, Hasher > &inout_hashTable) |
| Read a hash table (note that the entry order is not stable)
|
|
plResult | ReadString (plStringBuilder &ref_sBuilder) |
| Reads a string into an plStringBuilder.
|
|
plResult | ReadString (plString &ref_sString) |
| Reads a string into an plString.
|
|
virtual plUInt64 | SkipBytes (plUInt64 uiBytesToSkip) |
| Helper method to skip a number of bytes (implementations of the stream reader may implement this more efficiently for example)
|
|
PL_ALWAYS_INLINE plTypeVersion | ReadVersion (plTypeVersion expectedMaxVersion) |
|
Reader for the chunk format that plChunkStreamWriter writes.