OpenBarnyard
 
Loading...
Searching...
No Matches
TFileSystem Class Referenceabstract

#include <TFile.h>

Inheritance diagram for TFileSystem:
TGenericDList::TNode TNativeFileSystem TNullFileSystem

Public Member Functions

 TFileSystem (const TCHAR *a_szName)
 
 TFileSystem (const TFileSystem &other)
 
virtual ~TFileSystem ()=default
 
virtual TFileCreateFile (const TString8 &a_rcFileName, TFILEMODE a_eFileMode)=0
 Creates file.
 
virtual void DestroyFile (TFile *a_pFile)=0
 Destroys specified file.
 
virtual TBOOL RemoveFile (const TString8 &a_rcFileName)
 Removes specified file.
 
virtual TString8 MakeInternalPath (const TString8 &a_rcPath)=0
 Not documented.
 
virtual TBOOL GetFirstFile (const TString8 &a_rcPath, TString8 &a_rOutFileName, TFINDFILE a_ui8Flags=TFINDFILE_DIRECTORY|TFINDFILE_FILE)
 Finds out what's the first file at the specified path.
 
virtual TBOOL GetNextFile (TString8 &a_rOutFileName, TFINDFILE a_ui8Flags=TFINDFILE_DIRECTORY|TFINDFILE_FILE)
 Not documented.
 
virtual void SetPrefix (const TString8 &a_rcPrefix)
 Sets the directory prefix to work with.
 
virtual TBOOL ToNative (const TString8 &a_rcPath, TNativeFileInfo &a_rOutInfo)
 Fetches info about the path and returns internal path.
 
void UnmountFileSystem ()
 Unmounts this file system from the TFileManager.
 
const TString8GetName () const
 
const TString8GetPrefix () const
 
TFileSystemoperator= (TFileSystem &a_rFileSystem)
 
- Public Member Functions inherited from TGenericDList::TNode
template<typename T>
T * As ()
 
void Remove ()
 
void InsertAfter (TNode *a_pNode)
 
void InsertBefore (TNode *a_pNode)
 
TBOOL IsLinked () const
 

Protected Attributes

TString8 m_Name
 
TString8 m_Prefix
 
TFileLookupHandle m_NextFileHandle
 
- Protected Attributes inherited from TGenericDList::TNode
TNodem_pNext
 
TNodem_pPrev
 

Additional Inherited Members

- Public Types inherited from TGenericDList::TNode
enum  TUninitialised { Unitiailised }
 
- Public Attributes inherited from TGenericDList::TNode
friend TGenericDList
 
- Protected Member Functions inherited from TGenericDList::TNode
 TNode ()
 
 TNode (TUninitialised)
 
 ~TNode ()
 
TNodeNext () const
 
TNodePrev () const
 

Detailed Description

Definition at line 60 of file TFile.h.

Constructor & Destructor Documentation

◆ TFileSystem() [1/2]

TFileSystem::TFileSystem ( const TCHAR * a_szName)

Definition at line 19 of file TFileSystem.cpp.

20 : m_Name( name )
21{
22}
TString8 m_Name
Definition TFile.h:122

◆ TFileSystem() [2/2]

TFileSystem::TFileSystem ( const TFileSystem & other)

Definition at line 12 of file TFileSystem.cpp.

13{
14 m_Name = TString8( other.GetName() );
15 m_Prefix = TString8( other.GetPrefix() );
16}
const TString8 & GetPrefix() const
Definition TFile.h:117
const TString8 & GetName() const
Definition TFile.h:116
TString8 m_Prefix
Definition TFile.h:123

◆ ~TFileSystem()

virtual TFileSystem::~TFileSystem ( )
virtualdefault

Member Function Documentation

◆ CreateFile()

virtual TFile * TFileSystem::CreateFile ( const TString8 & a_rcFileName,
TFILEMODE a_eFileMode )
pure virtual

Creates file.

Parameters
a_rcFileNamepath to the file to open
a_eFileModemode to open the file with
Returns
pointer to the opened file or TNULL if couldn't open

Implemented in TNativeFileSystem, and TNullFileSystem.

◆ DestroyFile()

virtual void TFileSystem::DestroyFile ( TFile * a_pFile)
pure virtual

Destroys specified file.

Implemented in TNativeFileSystem, and TNullFileSystem.

◆ GetFirstFile()

virtual TBOOL TFileSystem::GetFirstFile ( const TString8 & a_rcPath,
TString8 & a_rOutFileName,
TFINDFILE a_ui8Flags = TFINDFILE_DIRECTORY | TFINDFILE_FILE )
inlinevirtual

Finds out what's the first file at the specified path.

Reimplemented in TNativeFileSystem.

Definition at line 94 of file TFile.h.

94{ return TFALSE; }
#define TFALSE
Definition Typedefs.h:24

◆ GetName()

const TString8 & TFileSystem::GetName ( ) const
inline

Definition at line 116 of file TFile.h.

116{ return m_Name; }

◆ GetNextFile()

virtual TBOOL TFileSystem::GetNextFile ( TString8 & a_rOutFileName,
TFINDFILE a_ui8Flags = TFINDFILE_DIRECTORY | TFINDFILE_FILE )
inlinevirtual

Not documented.

Reimplemented in TNativeFileSystem.

Definition at line 99 of file TFile.h.

99{ return TFALSE; }

◆ GetPrefix()

const TString8 & TFileSystem::GetPrefix ( ) const
inline

Definition at line 117 of file TFile.h.

117{ return m_Prefix; }

◆ MakeInternalPath()

virtual TString8 TFileSystem::MakeInternalPath ( const TString8 & a_rcPath)
pure virtual

Not documented.

Implemented in TNativeFileSystem, and TNullFileSystem.

◆ operator=()

TFileSystem & TFileSystem::operator= ( TFileSystem & a_rFileSystem)

Definition at line 47 of file TFileSystem.cpp.

48{
49 m_Name = a_rFileSystem.GetName();
50 m_Prefix = a_rFileSystem.GetPrefix();
51 return *this;
52}

◆ RemoveFile()

virtual TBOOL TFileSystem::RemoveFile ( const TString8 & a_rcFileName)
inlinevirtual

Removes specified file.

Reimplemented in TNativeFileSystem.

Definition at line 84 of file TFile.h.

84{ return TTRUE; }
#define TTRUE
Definition Typedefs.h:25

◆ SetPrefix()

void TFileSystem::SetPrefix ( const TString8 & a_rcPrefix)
virtual

Sets the directory prefix to work with.

Definition at line 25 of file TFileSystem.cpp.

26{
27 m_Prefix = a_rcPrefix;
28
29 for ( TINT32 i = 0; i < m_Prefix.Length(); i++ )
30 {
31 if ( m_Prefix[ i ] == '/' )
32 {
33 m_Prefix[ i ] = '\\';
34 }
35 }
36}
int32_t TINT32
Definition Typedefs.h:12

◆ ToNative()

TBOOL TFileSystem::ToNative ( const TString8 & a_rcPath,
TNativeFileInfo & a_rOutInfo )
virtual

Fetches info about the path and returns internal path.

Definition at line 39 of file TFileSystem.cpp.

40{
41 a_rOutInfo.InternalPath = MakeInternalPath( a_rcPath );
42 a_rOutInfo.Offset = 0;
43 a_rOutInfo.Length = 0;
44 return TTRUE;
45}
TString8 InternalPath
Definition TFile.h:54
TUINT32 Length
Definition TFile.h:56
TUINT32 Offset
Definition TFile.h:55
virtual TString8 MakeInternalPath(const TString8 &a_rcPath)=0
Not documented.

◆ UnmountFileSystem()

void TFileSystem::UnmountFileSystem ( )
inline

Unmounts this file system from the TFileManager.

Definition at line 114 of file TFile.h.

114{ TNode::Remove(); }

Member Data Documentation

◆ m_Name

TString8 TFileSystem::m_Name
protected

Definition at line 122 of file TFile.h.

◆ m_NextFileHandle

TFileLookupHandle TFileSystem::m_NextFileHandle
protected

Definition at line 124 of file TFile.h.

◆ m_Prefix

TString8 TFileSystem::m_Prefix
protected

Definition at line 123 of file TFile.h.


The documentation for this class was generated from the following files: