XII Release 0.1.0
Loading...
Searching...
No Matches
xiiDataDirectoryReaderWriterBase Class Referenceabstract

#include <DataDirType.h>

Inheritance diagram for xiiDataDirectoryReaderWriterBase:
[legend]

Public Member Functions

 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

Protected Member Functions

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

bool m_bIsReader
xiiInt32 m_iDataDirUserData = 0
xiiDataDirectoryType * m_pDataDirType
xiiString128 m_sFilePath

Detailed Description

This is the base class for all data directory readers/writers.

Different data directory types (ZIP file, simple folder, etc.) use different reader/writer types.

Constructor & Destructor Documentation

◆ xiiDataDirectoryReaderWriterBase()

xiiDataDirectoryReaderWriterBase::xiiDataDirectoryReaderWriterBase ( xiiInt32 iDataDirUserData,
bool bIsReader )
inline

The derived class should pass along whether it is a reader or writer.

Copyright (c) Theophilus Eriata. All Rights Reserved.

Member Function Documentation

◆ GetFileSize()

virtual xiiUInt64 xiiDataDirectoryReaderWriterBase::GetFileSize ( ) const
pure virtual

Returns the current total size of the file.

Implemented in xiiDataDirectory::ArchiveReaderCommon, xiiDataDirectory::FolderReader, and xiiDataDirectory::FolderWriter.

◆ InternalClose()

virtual void xiiDataDirectoryReaderWriterBase::InternalClose ( )
protectedpure virtual

◆ InternalOpen()

virtual xiiResult xiiDataDirectoryReaderWriterBase::InternalOpen ( xiiFileShareMode::Enum FileShareMode)
protectedpure virtual

The documentation for this class was generated from the following files:
  • /home/runner/work/XII/XII/Source/Engine/Foundation/IO/FileSystem/Implementation/DataDirType.h
  • /home/runner/work/XII/XII/Source/Engine/Foundation/IO/FileSystem/Implementation/DataDirType.cpp
  • /home/runner/work/XII/XII/Source/Engine/Foundation/IO/FileSystem/Implementation/DataDirType_inl.h