summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorGravatar Zach Hilman2018-11-28 14:01:56 -0500
committerGravatar Zach Hilman2018-12-03 17:21:25 -0500
commit5f0217592b9f27a32c236471c0a27e8ce345c926 (patch)
tree496180c2aab0b37cd15a1075ad0adfd8abb6eaf8 /src/core
parentaoc_u: Obey disabled add-ons list when listing DLC (diff)
downloadyuzu-5f0217592b9f27a32c236471c0a27e8ce345c926.tar.gz
yuzu-5f0217592b9f27a32c236471c0a27e8ce345c926.tar.xz
yuzu-5f0217592b9f27a32c236471c0a27e8ce345c926.zip
loader: Add support for reading the name of game's developer
Diffstat (limited to 'src/core')
-rw-r--r--src/core/loader/loader.h10
-rw-r--r--src/core/loader/nsp.cpp7
-rw-r--r--src/core/loader/nsp.h1
-rw-r--r--src/core/loader/xci.cpp7
-rw-r--r--src/core/loader/xci.h1
5 files changed, 26 insertions, 0 deletions
diff --git a/src/core/loader/loader.h b/src/core/loader/loader.h
index 7686634bf..c589b3bd1 100644
--- a/src/core/loader/loader.h
+++ b/src/core/loader/loader.h
@@ -12,6 +12,7 @@
12#include <vector> 12#include <vector>
13 13
14#include "common/common_types.h" 14#include "common/common_types.h"
15#include "core/file_sys/control_metadata.h"
15#include "core/file_sys/vfs.h" 16#include "core/file_sys/vfs.h"
16 17
17namespace Kernel { 18namespace Kernel {
@@ -243,6 +244,15 @@ public:
243 return ResultStatus::ErrorNotImplemented; 244 return ResultStatus::ErrorNotImplemented;
244 } 245 }
245 246
247 /**
248 * Get the developer of the application
249 * @param developer Reference to store the application developer into
250 * @return ResultStatus result of function
251 */
252 virtual ResultStatus ReadDeveloper(std::string& developer) {
253 return ResultStatus::ErrorNotImplemented;
254 }
255
246protected: 256protected:
247 FileSys::VirtualFile file; 257 FileSys::VirtualFile file;
248 bool is_loaded = false; 258 bool is_loaded = false;
diff --git a/src/core/loader/nsp.cpp b/src/core/loader/nsp.cpp
index 080d89904..b4ab88ae8 100644
--- a/src/core/loader/nsp.cpp
+++ b/src/core/loader/nsp.cpp
@@ -151,4 +151,11 @@ ResultStatus AppLoader_NSP::ReadTitle(std::string& title) {
151 title = nacp_file->GetApplicationName(); 151 title = nacp_file->GetApplicationName();
152 return ResultStatus::Success; 152 return ResultStatus::Success;
153} 153}
154
155ResultStatus AppLoader_NSP::ReadDeveloper(std::string& developer) {
156 if (nacp_file == nullptr)
157 return ResultStatus::ErrorNoControl;
158 developer = nacp_file->GetDeveloperName();
159 return ResultStatus::Success;
160}
154} // namespace Loader 161} // namespace Loader
diff --git a/src/core/loader/nsp.h b/src/core/loader/nsp.h
index db91cd01e..842327a49 100644
--- a/src/core/loader/nsp.h
+++ b/src/core/loader/nsp.h
@@ -43,6 +43,7 @@ public:
43 ResultStatus ReadProgramId(u64& out_program_id) override; 43 ResultStatus ReadProgramId(u64& out_program_id) override;
44 ResultStatus ReadIcon(std::vector<u8>& buffer) override; 44 ResultStatus ReadIcon(std::vector<u8>& buffer) override;
45 ResultStatus ReadTitle(std::string& title) override; 45 ResultStatus ReadTitle(std::string& title) override;
46 ResultStatus ReadDeveloper(std::string& developer) override;
46 47
47private: 48private:
48 std::unique_ptr<FileSys::NSP> nsp; 49 std::unique_ptr<FileSys::NSP> nsp;
diff --git a/src/core/loader/xci.cpp b/src/core/loader/xci.cpp
index 461607c95..bd5a83b49 100644
--- a/src/core/loader/xci.cpp
+++ b/src/core/loader/xci.cpp
@@ -120,4 +120,11 @@ ResultStatus AppLoader_XCI::ReadTitle(std::string& title) {
120 title = nacp_file->GetApplicationName(); 120 title = nacp_file->GetApplicationName();
121 return ResultStatus::Success; 121 return ResultStatus::Success;
122} 122}
123
124ResultStatus AppLoader_XCI::ReadDeveloper(std::string& developer) {
125 if (nacp_file == nullptr)
126 return ResultStatus::ErrorNoControl;
127 developer = nacp_file->GetDeveloperName();
128 return ResultStatus::Success;
129}
123} // namespace Loader 130} // namespace Loader
diff --git a/src/core/loader/xci.h b/src/core/loader/xci.h
index 46f8dfc9e..f3b5a3936 100644
--- a/src/core/loader/xci.h
+++ b/src/core/loader/xci.h
@@ -43,6 +43,7 @@ public:
43 ResultStatus ReadProgramId(u64& out_program_id) override; 43 ResultStatus ReadProgramId(u64& out_program_id) override;
44 ResultStatus ReadIcon(std::vector<u8>& buffer) override; 44 ResultStatus ReadIcon(std::vector<u8>& buffer) override;
45 ResultStatus ReadTitle(std::string& title) override; 45 ResultStatus ReadTitle(std::string& title) override;
46 ResultStatus ReadDeveloper(std::string& developer) override;
46 47
47private: 48private:
48 std::unique_ptr<FileSys::XCI> xci; 49 std::unique_ptr<FileSys::XCI> xci;