diff options
| author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> | 2015-01-06 21:30:40 +0000 |
|---|---|---|
| committer | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> | 2015-01-15 21:21:26 +0000 |
| commit | b5237e885df72f6c37532fc8af9573966e7b07e5 (patch) | |
| tree | fdfd4da299cc2779f35fcc30e770b85b9e710166 /src/core/loader/loader.h | |
| parent | 2d63df90a9d64d3961be07ef0a959bc48b42c73b (diff) | |
Loader: Keep a reference to the file and pass it to the correct AppLoader, instead of loading it multiple times.
Diffstat (limited to 'src/core/loader/loader.h')
| -rw-r--r-- | src/core/loader/loader.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/core/loader/loader.h b/src/core/loader/loader.h index ec5534d41..b4fc8636d 100644 --- a/src/core/loader/loader.h +++ b/src/core/loader/loader.h @@ -7,6 +7,7 @@ #include <vector> #include "common/common.h" +#include "common/file_util.h" //////////////////////////////////////////////////////////////////////////////////////////////////// // Loader namespace @@ -40,7 +41,7 @@ enum class ResultStatus { /// Interface for loading an application class AppLoader : NonCopyable { public: - AppLoader() { } + AppLoader(std::unique_ptr<FileUtil::IOFile>&& file) : file(std::move(file)) { } virtual ~AppLoader() { } /** @@ -93,6 +94,10 @@ public: virtual ResultStatus ReadRomFS(std::vector<u8>& buffer) const { return ResultStatus::ErrorNotImplemented; } + +protected: + std::unique_ptr<FileUtil::IOFile> file; + bool is_loaded = false; }; /** |
