|
plString128 | GetFilePathAbsolute () const |
| Returns the absolute path with which the file was opened (including the prefix of the data directory).
|
|
plString128 | GetFilePathRelative () const |
| Returns the relative path of the file within its data directory (excluding the prefix of the data directory).
|
|
plDataDirectoryType * | GetDataDirectory () const |
| Returns the plDataDirectoryType over which this file has been opened.
|
|
bool | IsOpen () const |
| Returns true, if the file is currently open.
|
|
plUInt64 | GetFileSize () const |
| Returns the current total size of the file.
|
|
| plStreamReader () |
| Constructor.
|
|
virtual | ~plStreamReader () |
| Virtual destructor to ensure correct cleanup.
|
|
virtual plUInt64 | ReadBytes (void *pReadBuffer, plUInt64 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 > |
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) |
|
The base class for all file readers. Provides access to plFileSystem::GetFileReader, which is necessary to get access to the streams that plDataDirectoryType's provide. Derive from this class if you want to implement different policies on how to read files. E.g. the default reader (plFileReader) implements a buffered read policy (using an internal cache).