romfs_controller.cpp 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. // SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #include "core/hle/service/filesystem/romfs_controller.h"
  4. namespace Service::FileSystem {
  5. RomFsController::RomFsController(std::shared_ptr<FileSys::RomFSFactory> factory_, u64 program_id_)
  6. : factory{std::move(factory_)}, program_id{program_id_} {}
  7. RomFsController::~RomFsController() = default;
  8. FileSys::VirtualFile RomFsController::OpenRomFSCurrentProcess() {
  9. return factory->OpenCurrentProcess(program_id);
  10. }
  11. FileSys::VirtualFile RomFsController::OpenPatchedRomFS(u64 title_id,
  12. FileSys::ContentRecordType type) {
  13. return factory->OpenPatchedRomFS(title_id, type);
  14. }
  15. FileSys::VirtualFile RomFsController::OpenPatchedRomFSWithProgramIndex(
  16. u64 title_id, u8 program_index, FileSys::ContentRecordType type) {
  17. return factory->OpenPatchedRomFSWithProgramIndex(title_id, program_index, type);
  18. }
  19. FileSys::VirtualFile RomFsController::OpenRomFS(u64 title_id, FileSys::StorageId storage_id,
  20. FileSys::ContentRecordType type) {
  21. return factory->Open(title_id, storage_id, type);
  22. }
  23. std::shared_ptr<FileSys::NCA> RomFsController::OpenBaseNca(u64 title_id,
  24. FileSys::StorageId storage_id,
  25. FileSys::ContentRecordType type) {
  26. return factory->GetEntry(title_id, storage_id, type);
  27. }
  28. } // namespace Service::FileSystem