diff options
author | Zach Hilman <zachhilman@gmail.com> | 2018-07-23 12:33:24 -0400 |
---|---|---|
committer | Zach Hilman <zachhilman@gmail.com> | 2018-07-23 12:34:26 -0400 |
commit | e8f641a52de33b33e0d6c73ee7ca07f06dcd8aeb (patch) | |
tree | 262ba8e104beb57733f0e7c8e0703b87ed013ce2 /src/core/loader/nro.h | |
parent | e85a528bb9c5b7b9f8d0431689edaa0986075d25 (diff) |
NRO Assets and NACP file format
Cleanup
Review fixes
Diffstat (limited to 'src/core/loader/nro.h')
-rw-r--r-- | src/core/loader/nro.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/core/loader/nro.h b/src/core/loader/nro.h index 2c03d06bb..5f3fc40d2 100644 --- a/src/core/loader/nro.h +++ b/src/core/loader/nro.h @@ -6,12 +6,15 @@ #include <string> #include "common/common_types.h" +#include "core/file_sys/control_metadata.h" #include "core/hle/kernel/kernel.h" #include "core/loader/linker.h" #include "core/loader/loader.h" namespace Loader { +struct AssetHeader; + /// Loads an NRO file class AppLoader_NRO final : public AppLoader, Linker { public: @@ -30,8 +33,17 @@ public: ResultStatus Load(Kernel::SharedPtr<Kernel::Process>& process) override; + ResultStatus ReadIcon(std::vector<u8>& buffer) override; + ResultStatus ReadProgramId(u64& out_program_id) override; + ResultStatus ReadRomFS(FileSys::VirtualFile& dir) override; + ResultStatus ReadTitle(std::string& title) override; + private: bool LoadNro(FileSys::VirtualFile file, VAddr load_base); + + std::vector<u8> icon_data; + std::unique_ptr<FileSys::NACP> nacp; + FileSys::VirtualFile romfs; }; } // namespace Loader |