69 if (std::find(Paths.begin(), Paths.end(), path) != Paths.end())
83 if ((*pathListIter).pathType == C4Reloc::PathType::PATH_IncludingSubdirectories)
100 if ((!*currentSubdir) || !*(++currentSubdir))
121 if (!subdirIters.empty())
125 return *temporaryPathInfo;
127 return *pathListIter;
132 if (!
a.subdirIters.empty())
return false;
133 if (!
b.subdirIters.empty())
return false;
134 return a.pathListIter ==
b.pathListIter;
146 return std::move(iter);
153 return std::move(iter);
160 return group.
Open(filename);
163 for (
const auto & iter : *
this)
165 if (group.
Open((iter.strBuf +
DirSep + filename).getData()))
182 for(
const auto & iter : *
this)
bool operator!=(const C4Reloc::const_iterator &a, const C4Reloc::const_iterator &b)
bool operator==(const C4Reloc::const_iterator &a, const C4Reloc::const_iterator &b)
bool DirectoryExists(const char *szFilename)
bool IsGlobalPath(const char *szPath)
bool ItemExists(const char *szItemName)
char SystemDataPath[CFG_MaxString+1]
char UserDataPath[CFG_MaxString+1]
char ModsDataPath[CFG_MaxString+1]
bool Open(const char *group_name, bool do_create=false)
PathList::const_iterator pathListIter
const_iterator & operator++()
const PathInfo & operator*() const
std::stack< DirectoryIterator > subdirIters
@ PATH_PreferredInstallationLocation
@ PATH_IncludingSubdirectories
bool LocateItem(const char *filename, StdStrBuf &str) const
bool AddPath(const char *path, PathType pathType=PATH_Regular)
bool Open(C4Group &group, const char *filename) const
const char * getData() const
void Append(const char *pnData, size_t iChars)