diff options
Diffstat (limited to 'engines/kyra/resource.h')
-rw-r--r-- | engines/kyra/resource.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/engines/kyra/resource.h b/engines/kyra/resource.h index 576f683014..0831acaed6 100644 --- a/engines/kyra/resource.h +++ b/engines/kyra/resource.h @@ -47,7 +47,6 @@ class Resource; class ResArchiveLoader; class Resource { - friend class StaticResource; public: Resource(KyraEngine_v1 *vm); ~Resource(); @@ -55,14 +54,20 @@ public: bool reset(); bool loadPakFile(Common::String filename); - void unloadPakFile(Common::String filename); + bool loadPakFile(Common::String name, Common::SharedPtr<Common::ArchiveMember> file); + void unloadPakFile(Common::String filename, bool remFromCache = false); bool isInPakList(Common::String filename); + bool isInCacheList(Common::String name); bool loadFileList(const Common::String &filedata); bool loadFileList(const char * const *filelist, uint32 numFiles); - // This unloads *all* pakfiles, even kyra.dat and protected ones + + // This unloads *all* pakfiles, even kyra.dat and protected ones. + // It does not remove files from cache though! void unloadAllPakFiles(); + void listFiles(const Common::String &pattern, Common::ArchiveMemberList &list); + bool exists(const char *file, bool errorOutOnFail=false); uint32 getFileSize(const char *file); uint8* fileData(const char *file, uint32 *size); @@ -77,7 +82,6 @@ protected: Common::SharedPtr<Common::SearchSet> _archiveFiles; Common::SharedPtr<Common::SearchSet> _protectedFiles; - Common::ArchivePtr loadArchive(const Common::String &file); Common::ArchivePtr loadArchive(const Common::String &name, Common::SharedPtr<Common::ArchiveMember> member); Common::ArchivePtr loadInstallerArchive(const Common::String &file, const Common::String &ext, const uint8 offset); |