![]() |
XII Release 0.1.0
|
A base class for readers that handle reading from a (virtual) file inside a data directory. More...
#include <DataDirType.h>
Public Member Functions | |
| xiiDataDirectoryReader (xiiInt32 iDataDirUserData) | |
| virtual xiiUInt64 | Read (void *pBuffer, xiiUInt64 uiBytes)=0 |
| virtual xiiUInt64 | Skip (xiiUInt64 uiBytes) |
| Helper method to skip a number of bytes (implementations of the directory reader may implement this more efficiently for example) | |
Public Member Functions inherited from xiiDataDirectoryReaderWriterBase | |
| xiiDataDirectoryReaderWriterBase (xiiInt32 iDataDirUserData, bool bIsReader) | |
| The derived class should pass along whether it is a reader or writer. | |
| xiiResult | Open (xiiStringView sFile, xiiDataDirectoryType *pOwnerDataDirectory, xiiFileShareMode::Enum fileShareMode) |
| Used by xiiDataDirectoryType's to try to open the given file. They need to pass along their own pointer. | |
| void | Close () |
| Closes this data stream. | |
| const xiiString128 & | GetFilePath () const |
| Returns the relative path of this file within the owner data directory. | |
| xiiDataDirectoryType * | GetDataDirectory () const |
| Returns the pointer to the data directory, which created this reader/writer. | |
| bool | IsReader () const |
| Returns true if this is a reader stream, false if it is a writer stream. | |
| virtual xiiUInt64 | GetFileSize () const =0 |
| Returns the current total size of the file. | |
| xiiInt32 | GetDataDirUserData () const |
Additional Inherited Members | |
Protected Member Functions inherited from xiiDataDirectoryReaderWriterBase | |
| virtual xiiResult | InternalOpen (xiiFileShareMode::Enum FileShareMode)=0 |
| This function must be implemented by the derived class. | |
| virtual void | InternalClose ()=0 |
| This function must be implemented by the derived class. | |
Protected Attributes inherited from xiiDataDirectoryReaderWriterBase | |
| bool | m_bIsReader |
| xiiInt32 | m_iDataDirUserData = 0 |
| xiiDataDirectoryType * | m_pDataDirType |
| xiiString128 | m_sFilePath |
A base class for readers that handle reading from a (virtual) file inside a data directory.
Different data directory types (ZIP file, simple folder, etc.) use different reader/writer types.
|
inlinevirtual |
Helper method to skip a number of bytes (implementations of the directory reader may implement this more efficiently for example)
Reimplemented in xiiDataDirectory::ArchiveReaderUncompressed, and xiiDataDirectory::FolderReader.