27 #include "BasicTypes.h" 29 enum class EFileAccessMode
36 enum class FilePosOrigin
44 struct FileOpenAttribs
46 const Diligent::Char *strFilePath;
47 EFileAccessMode AccessMode;
48 FileOpenAttribs(
const Diligent::Char *Path =
nullptr,
49 EFileAccessMode Access = EFileAccessMode::Read) :
58 BasicFile(
const FileOpenAttribs &OpenAttribs, Diligent::Char SlashSymbol );
68 FileOpenAttribs m_OpenAttribs;
74 virtual const Diligent::Char* Name()
const = 0;
75 virtual bool IsDirectory()
const = 0;
77 virtual ~FindFileData(){}
80 struct BasicFileSystem
83 static BasicFile* OpenFile( FileOpenAttribs &OpenAttribs );
84 static void ReleaseFile( BasicFile* );
86 static std::string GetFullPath(
const Diligent::Char *strFilePath );
88 static bool FileExists(
const Diligent::Char *strFilePath );
90 static void SetWorkingDirectory(
const Diligent::Char *strWorkingDir ){ m_strWorkingDirectory = strWorkingDir; }
91 static const Diligent::String &GetWorkingDirectory(){
return m_strWorkingDirectory; }
93 static Diligent::Char GetSlashSymbol();
94 static void CorrectSlashes(
Diligent::String &Path, Diligent::Char SlashSymbol);
std::basic_string< Char > String
String variable.
Definition: BasicTypes.h:51