summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/ns/ns.h
diff options
context:
space:
mode:
authorLiam <byteslice@airmail.cc>2024-02-17 20:22:15 +0100
committerLiam <byteslice@airmail.cc>2024-02-18 16:35:39 +0100
commit2e96921f9cbd7e8eab6c6b8e94bdbe1a5ccd7237 (patch)
treea0e730535f063c5154c5eeac4e329fefc053d4dd /src/core/hle/service/ns/ns.h
parentns: move IDevelopInterface (diff)
downloadyuzu-2e96921f9cbd7e8eab6c6b8e94bdbe1a5ccd7237.tar
yuzu-2e96921f9cbd7e8eab6c6b8e94bdbe1a5ccd7237.tar.gz
yuzu-2e96921f9cbd7e8eab6c6b8e94bdbe1a5ccd7237.tar.bz2
yuzu-2e96921f9cbd7e8eab6c6b8e94bdbe1a5ccd7237.tar.lz
yuzu-2e96921f9cbd7e8eab6c6b8e94bdbe1a5ccd7237.tar.xz
yuzu-2e96921f9cbd7e8eab6c6b8e94bdbe1a5ccd7237.tar.zst
yuzu-2e96921f9cbd7e8eab6c6b8e94bdbe1a5ccd7237.zip
Diffstat (limited to 'src/core/hle/service/ns/ns.h')
-rw-r--r--src/core/hle/service/ns/ns.h49
1 files changed, 6 insertions, 43 deletions
diff --git a/src/core/hle/service/ns/ns.h b/src/core/hle/service/ns/ns.h
index 39a6b6f21..ef5c575da 100644
--- a/src/core/hle/service/ns/ns.h
+++ b/src/core/hle/service/ns/ns.h
@@ -9,28 +9,9 @@ namespace Core {
class System;
}
-namespace Service {
+namespace Service::NS {
-namespace FileSystem {
-class FileSystemController;
-} // namespace FileSystem
-
-namespace NS {
-
-class IApplicationManagerInterface final : public ServiceFramework<IApplicationManagerInterface> {
-public:
- explicit IApplicationManagerInterface(Core::System& system_);
- ~IApplicationManagerInterface() override;
-
- Result GetApplicationDesiredLanguage(u8* out_desired_language, u32 supported_languages);
- Result ConvertApplicationLanguageToLanguageCode(u64* out_language_code,
- u8 application_language);
-
-private:
- void GetApplicationControlData(HLERequestContext& ctx);
- void GetApplicationDesiredLanguage(HLERequestContext& ctx);
- void ConvertApplicationLanguageToLanguageCode(HLERequestContext& ctx);
-};
+class IApplicationManagerInterface;
class NS final : public ServiceFramework<NS> {
public:
@@ -41,32 +22,14 @@ public:
private:
template <typename T, typename... Args>
- void PushInterface(HLERequestContext& ctx) {
- LOG_DEBUG(Service_NS, "called");
-
- IPC::ResponseBuilder rb{ctx, 2, 0, 1};
- rb.Push(ResultSuccess);
- rb.PushIpcInterface<T>(system);
- }
+ void PushInterface(HLERequestContext& ctx);
- void PushIApplicationManagerInterface(HLERequestContext& ctx) {
- LOG_DEBUG(Service_NS, "called");
-
- IPC::ResponseBuilder rb{ctx, 2, 0, 1};
- rb.Push(ResultSuccess);
- rb.PushIpcInterface<IApplicationManagerInterface>(system);
- }
+ void PushIApplicationManagerInterface(HLERequestContext& ctx);
template <typename T, typename... Args>
- std::shared_ptr<T> GetInterface(Args&&... args) const {
- static_assert(std::is_base_of_v<SessionRequestHandler, T>,
- "Not a base of ServiceFrameworkBase");
-
- return std::make_shared<T>(std::forward<Args>(args)...);
- }
+ std::shared_ptr<T> GetInterface(Args&&... args) const;
};
void LoopProcess(Core::System& system);
-} // namespace NS
-} // namespace Service
+} // namespace Service::NS