gwnavgeneration/common/generatorfilesystem.h Source File
Go to the documentation of this file.
9 #ifndef GwNavGen_GeneratorFileSystem_H
10 #define GwNavGen_GeneratorFileSystem_H
32 class GeneratorFileSystem
36 enum FileOrDirType { NOT_FOUND, TYPE_FILE, TYPE_DIRECTORY };
39 void Setup(
const char* absoluteOutputBaseDir,
const char* relativeOutputDir);
41 const String& GetAbsoluteOutputDirectory()
const {
return m_absoluteOutputDirectory; }
43 String GetAbsoluteFileName(
const char* relativeFileName)
const
45 return ConcatToPath(m_absoluteOutputDirectory, relativeFileName);
48 String GetRelativeFileName(
const char* relativeFileName)
const
50 return ConcatToPath(m_relativeOutputDirectory, relativeFileName);
53 KyResult MakeDirectory(
const char* relativeFileName)
const
55 return MakeDirectory_Absolute(GetAbsoluteFileName(relativeFileName).ToCStr());
58 KyResult MakeDirectoryForFile(
const char* relativeFileName)
const
60 return MakeDirectoryForFile_Absolute(GetAbsoluteFileName(relativeFileName).ToCStr());
63 bool DoesFileOrDirExist(
const char* relativeFileName)
const
65 return DoesFileOrDirExist_Absolute(GetAbsoluteFileName(relativeFileName).ToCStr());
68 FileOrDirType GetFileOrDirType(
const char* relativeFileOrDirName)
const
70 return GetFileOrDirType_Absolute(GetAbsoluteFileName(relativeFileOrDirName).ToCStr());
74 KyResult RemoveFile(
const char* fileName);
77 KyResult RemoveAllFilesInDirectory(
const char* dirNameRelativeToOutputDir);
82 KyResult RemoveDirectoryAndFilesInIt(
const char* dirNameRelativeToOutputDir);
85 static KyUInt32 GetLastSeparatorIdx(
const char* fileOrDirName);
86 static KyUInt32 GetLastSeparatorIdx(
const String& fileOrDirName);
87 static String GetContainingDirectory(
const char* fileOrDirName);
88 static String GetContainingDirectory(
const String& fileOrDirName);
89 static String GetFileSimpleName(
const char* fileName);
90 static String GetFileNameExtension(
const char* fileName);
91 static String GetFileNameWithoutExtension(
const char* fileName);
92 static String GetFileNameWithoutExtension(
const String& fileName);
93 static void RemoveTrailingSlashs(String& fileName);
94 static String RemoveTrailingSlashs(
const char* fileName);
95 static bool IsWinDrive(
const char* dirName);
96 static bool IsAbsolute(
const char* fileOrDirName);
99 static KyResult MakeDirectory_Absolute(
const char* absoluteDirName);
100 static KyResult MakeDirectory_Absolute(
const String& absoluteDirName);
101 static KyResult MakeDirectoryForFile_Absolute(
const char* absoluteFileName);
102 static bool DoesFileOrDirExist_Absolute(
const char* absoluteFileName);
103 static FileOrDirType GetFileOrDirType_Absolute(
const char* absoluteFileName);
104 static FileOrDirType GetFileOrDirType_Absolute(
const String& absoluteFileName);
105 static KyResult ListFilesInAbsoluteDirectory(
const char* dirName, KyArray<String>& filesList);
108 String ConcatToPath(
const String& basePath,
const char* relativeFileName)
const;
111 String m_absoluteOutputBaseDirectory;
112 String m_relativeOutputDirectory;
113 String m_absoluteOutputDirectory;
KyInt32 KyResult
Defines a type that can be returned by methods or functions in the Gameware Navigation SDK to indicat...
Definition: types.h:254
Definition: gamekitcrowddispersion.h:20
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:137
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36