diff options
Diffstat (limited to 'src/core/loader/nca.h')
| -rw-r--r-- | src/core/loader/nca.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/core/loader/nca.h b/src/core/loader/nca.h index 96779e27fc..cf63822120 100644 --- a/src/core/loader/nca.h +++ b/src/core/loader/nca.h @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project +// SPDX-License-Identifier: GPL-3.0-or-later + // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later @@ -11,6 +14,7 @@ class System; } namespace FileSys { +class NACP; class NCA; } @@ -21,7 +25,7 @@ class AppLoader_DeconstructedRomDirectory; /// Loads an NCA file class AppLoader_NCA final : public AppLoader { public: - explicit AppLoader_NCA(FileSys::VirtualFile file_); + explicit AppLoader_NCA(FileSys::VirtualFile file_, u64 update_only_program_id = 0); ~AppLoader_NCA() override; /** @@ -43,14 +47,20 @@ public: ResultStatus ReadRomFS(FileSys::VirtualFile& dir) override; ResultStatus ReadProgramId(u64& out_program_id) override; + ResultStatus ReadControlData(FileSys::NACP& out_control) override; + ResultStatus ReadTitle(std::string& out_title) override; ResultStatus ReadBanner(std::vector<u8>& buffer) override; ResultStatus ReadLogo(std::vector<u8>& buffer) override; ResultStatus ReadNSOModules(Modules& modules) override; + u64 GetProgramId() const; + private: std::unique_ptr<FileSys::NCA> nca; + u64 update_only_program_id{}; + std::unique_ptr<FileSys::NACP> nacp; std::unique_ptr<AppLoader_DeconstructedRomDirectory> directory_loader; }; |
