diff --git a/source/lib/file/vfs/vfs.cpp b/source/lib/file/vfs/vfs.cpp index eb8d79c5cd..a69e7f3c0e 100644 --- a/source/lib/file/vfs/vfs.cpp +++ b/source/lib/file/vfs/vfs.cpp @@ -75,6 +75,14 @@ public: return INFO::OK; } + virtual LibError GetFilePriority(const VfsPath& pathname, size_t* ppriority) const + { + VfsDirectory* directory; VfsFile* file; + RETURN_ERR(vfs_Lookup(pathname, &m_rootDirectory, directory, &file)); + *ppriority = file->Priority(); + return INFO::OK; + } + virtual LibError GetDirectoryEntries(const VfsPath& path, FileInfos* fileInfos, DirectoryNames* subdirectoryNames) const { VfsDirectory* directory; diff --git a/source/lib/file/vfs/vfs.h b/source/lib/file/vfs/vfs.h index 85f0a030b8..d91a149094 100644 --- a/source/lib/file/vfs/vfs.h +++ b/source/lib/file/vfs/vfs.h @@ -92,6 +92,16 @@ struct IVFS **/ virtual LibError GetFileInfo(const VfsPath& pathname, FileInfo* pfileInfo) const = 0; + /** + * Retrieve mount priority for a file. + * + * @param pathname + * @param ppriority receives priority value, if the file can be found. + * + * @return LibError. + **/ + virtual LibError GetFilePriority(const VfsPath& pathname, size_t* ppriority) const = 0; + /** * Retrieve lists of all files and subdirectories in a directory. *