218 return m_pFileSystem;
273 InvalidateSystemPath();
289 void ValidateSystemPath();
290 void InvalidateSystemPath() { m_IsValidated =
TFALSE; }
292 static void CreateCommon();
293 static void DestroyCommon();
298 TString8 m_WorkingDirectory;
300 TDList<TFileSystem> m_Validated;
301 TDList<TFileSystem> m_Invalidated;
#define TOSHI_NAMESPACE_START
#define TDECLARE_POINTER_HANDLE(NAME)
#define TOSHI_NAMESPACE_END
Char string implementation for the Toshi engine.
TFileSystem & operator=(TFileSystem &a_rFileSystem)
virtual TBOOL RemoveFile(const TString8 &a_rcFileName)
Removes specified file.
TFileSystem(const TCHAR *a_szName)
const TString8 & GetPrefix() const
virtual void DestroyFile(TFile *a_pFile)=0
Destroys specified file.
virtual TBOOL GetNextFile(TString8 &a_rOutFileName, TFINDFILE a_ui8Flags=TFINDFILE_DIRECTORY|TFINDFILE_FILE)
Not documented.
virtual TBOOL ToNative(const TString8 &a_rcPath, TNativeFileInfo &a_rOutInfo)
Fetches info about the path and returns internal path.
const TString8 & GetName() const
virtual TFile * CreateFile(const TString8 &a_rcFileName, TFILEMODE a_eFileMode)=0
Creates file.
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 ~TFileSystem()=default
virtual void SetPrefix(const TString8 &a_rcPrefix)
Sets the directory prefix to work with.
virtual TString8 MakeInternalPath(const TString8 &a_rcPath)=0
Not documented.
TFileLookupHandle m_NextFileHandle
void UnmountFileSystem()
Unmounts this file system from the TFileManager.
virtual TBOOL Seek(TINT a_iOffset, TSEEK a_eOrigin=TSEEK_CUR)=0
Shifts current file cursor based on the specified offset and origin.
virtual void FlushBuffers()
Flushes write buffers.
virtual TINT PutCChar(TCHAR a_cCharacter)=0
Writes one character of type TCHAR to the file.
virtual TSIZE GetSize()=0
virtual TCHAR GetCChar()=0
Reads one character of type TCHAR from the file.
static TString8 ConcatPath(const TString8 &a_rcPath1, const TString8 &a_rcPath2)
static TString8 SimplifyPath(const TString8 &a_rcPath)
virtual TSIZE Write(const void *a_pSrc, TSIZE a_uiSize)=0
Writes specified number of bytes to the file from the buffer.
virtual TSIZE Read(void *a_pDst, TSIZE a_uiSize)=0
Reads specified number of bytes from the file into the buffer.
static TFile * Create(const TString8 &a_rcFilename, TFILEMODE a_eMode=TFILEMODE_READ)
virtual TINT WPrintf(const TWCHAR *a_wszFormat,...)=0
Analogue of wprintf but writes result to the file.
TFile(TFileSystem *a_pFS)
virtual TWCHAR GetWChar()=0
Reads one character of type wchar from the file.
virtual TINT CPrintf(const TCHAR *a_szFormat,...)=0
Analogue of printf but writes result to the file.
virtual TUINT64 GetDate()
virtual TINT PutWChar(TWCHAR a_wcCharacter)=0
Writes one character of type wchar to the file.
TFileSystem * GetFileSystem() const
static void FileSystemWait()
void SetSystemPath(const TString8 &name)
TFileSystem * FindFileSystem(const TString8 &name)
static void FileSystemRelease()
TString8 MakeAbsolutePath(const TString8 &a_rcRelativePath) const
TFile * CreateFile(const TString8 &a_strName, TFILEMODE flags)
void MountFileSystem(TFileSystem *a_pFileSystem)
TBOOL GetFileInfo(const TString8 &a_strPath, TNativeFileInfo &a_rNativeInfo)
TBOOL Next(TString8 &path)
TSysPathIter(const TString8 &str)
TBOOL First(TString8 &path)
TSingleton(const TSingleton &)=delete