mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-12-01 19:22:46 +01:00
ns: move IDevelopInterface
This commit is contained in:
parent
ae83ee28a3
commit
cf0de18982
4 changed files with 58 additions and 32 deletions
|
@ -745,6 +745,8 @@ add_library(core STATIC
|
||||||
hle/service/ns/application_version_interface.h
|
hle/service/ns/application_version_interface.h
|
||||||
hle/service/ns/content_management_interface.cpp
|
hle/service/ns/content_management_interface.cpp
|
||||||
hle/service/ns/content_management_interface.h
|
hle/service/ns/content_management_interface.h
|
||||||
|
hle/service/ns/develop_interface.cpp
|
||||||
|
hle/service/ns/develop_interface.h
|
||||||
hle/service/ns/document_interface.cpp
|
hle/service/ns/document_interface.cpp
|
||||||
hle/service/ns/document_interface.h
|
hle/service/ns/document_interface.h
|
||||||
hle/service/ns/download_task_interface.cpp
|
hle/service/ns/download_task_interface.cpp
|
||||||
|
|
38
src/core/hle/service/ns/develop_interface.cpp
Normal file
38
src/core/hle/service/ns/develop_interface.cpp
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
// SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
#include "core/hle/service/ns/develop_interface.h"
|
||||||
|
|
||||||
|
namespace Service::NS {
|
||||||
|
|
||||||
|
IDevelopInterface::IDevelopInterface(Core::System& system_) : ServiceFramework{system_, "ns:dev"} {
|
||||||
|
// clang-format off
|
||||||
|
static const FunctionInfo functions[] = {
|
||||||
|
{0, nullptr, "LaunchProgram"},
|
||||||
|
{1, nullptr, "TerminateProcess"},
|
||||||
|
{2, nullptr, "TerminateProgram"},
|
||||||
|
{4, nullptr, "GetShellEvent"},
|
||||||
|
{5, nullptr, "GetShellEventInfo"},
|
||||||
|
{6, nullptr, "TerminateApplication"},
|
||||||
|
{7, nullptr, "PrepareLaunchProgramFromHost"},
|
||||||
|
{8, nullptr, "LaunchApplicationFromHost"},
|
||||||
|
{9, nullptr, "LaunchApplicationWithStorageIdForDevelop"},
|
||||||
|
{10, nullptr, "IsSystemMemoryResourceLimitBoosted"},
|
||||||
|
{11, nullptr, "GetRunningApplicationProcessIdForDevelop"},
|
||||||
|
{12, nullptr, "SetCurrentApplicationRightsEnvironmentCanBeActiveForDevelop"},
|
||||||
|
{13, nullptr, "CreateApplicationResourceForDevelop"},
|
||||||
|
{14, nullptr, "IsPreomiaForDevelop"},
|
||||||
|
{15, nullptr, "GetApplicationProgramIdFromHost"},
|
||||||
|
{16, nullptr, "RefreshCachedDebugValues"},
|
||||||
|
{17, nullptr, "PrepareLaunchApplicationFromHost"},
|
||||||
|
{18, nullptr, "GetLaunchEvent"},
|
||||||
|
{19, nullptr, "GetLaunchResult"},
|
||||||
|
};
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
|
RegisterHandlers(functions);
|
||||||
|
}
|
||||||
|
|
||||||
|
IDevelopInterface::~IDevelopInterface() = default;
|
||||||
|
|
||||||
|
} // namespace Service::NS
|
16
src/core/hle/service/ns/develop_interface.h
Normal file
16
src/core/hle/service/ns/develop_interface.h
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
// SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "core/hle/service/service.h"
|
||||||
|
|
||||||
|
namespace Service::NS {
|
||||||
|
|
||||||
|
class IDevelopInterface final : public ServiceFramework<IDevelopInterface> {
|
||||||
|
public:
|
||||||
|
explicit IDevelopInterface(Core::System& system_);
|
||||||
|
~IDevelopInterface() override;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace Service::NS
|
|
@ -14,6 +14,7 @@
|
||||||
#include "core/hle/service/ns/account_proxy_interface.h"
|
#include "core/hle/service/ns/account_proxy_interface.h"
|
||||||
#include "core/hle/service/ns/application_version_interface.h"
|
#include "core/hle/service/ns/application_version_interface.h"
|
||||||
#include "core/hle/service/ns/content_management_interface.h"
|
#include "core/hle/service/ns/content_management_interface.h"
|
||||||
|
#include "core/hle/service/ns/develop_interface.h"
|
||||||
#include "core/hle/service/ns/document_interface.h"
|
#include "core/hle/service/ns/document_interface.h"
|
||||||
#include "core/hle/service/ns/download_task_interface.h"
|
#include "core/hle/service/ns/download_task_interface.h"
|
||||||
#include "core/hle/service/ns/dynamic_rights_interface.h"
|
#include "core/hle/service/ns/dynamic_rights_interface.h"
|
||||||
|
@ -499,37 +500,6 @@ std::shared_ptr<IApplicationManagerInterface> NS::GetApplicationManagerInterface
|
||||||
return GetInterface<IApplicationManagerInterface>(system);
|
return GetInterface<IApplicationManagerInterface>(system);
|
||||||
}
|
}
|
||||||
|
|
||||||
class NS_DEV final : public ServiceFramework<NS_DEV> {
|
|
||||||
public:
|
|
||||||
explicit NS_DEV(Core::System& system_) : ServiceFramework{system_, "ns:dev"} {
|
|
||||||
// clang-format off
|
|
||||||
static const FunctionInfo functions[] = {
|
|
||||||
{0, nullptr, "LaunchProgram"},
|
|
||||||
{1, nullptr, "TerminateProcess"},
|
|
||||||
{2, nullptr, "TerminateProgram"},
|
|
||||||
{4, nullptr, "GetShellEvent"},
|
|
||||||
{5, nullptr, "GetShellEventInfo"},
|
|
||||||
{6, nullptr, "TerminateApplication"},
|
|
||||||
{7, nullptr, "PrepareLaunchProgramFromHost"},
|
|
||||||
{8, nullptr, "LaunchApplicationFromHost"},
|
|
||||||
{9, nullptr, "LaunchApplicationWithStorageIdForDevelop"},
|
|
||||||
{10, nullptr, "IsSystemMemoryResourceLimitBoosted"},
|
|
||||||
{11, nullptr, "GetRunningApplicationProcessIdForDevelop"},
|
|
||||||
{12, nullptr, "SetCurrentApplicationRightsEnvironmentCanBeActiveForDevelop"},
|
|
||||||
{13, nullptr, "CreateApplicationResourceForDevelop"},
|
|
||||||
{14, nullptr, "IsPreomiaForDevelop"},
|
|
||||||
{15, nullptr, "GetApplicationProgramIdFromHost"},
|
|
||||||
{16, nullptr, "RefreshCachedDebugValues"},
|
|
||||||
{17, nullptr, "PrepareLaunchApplicationFromHost"},
|
|
||||||
{18, nullptr, "GetLaunchEvent"},
|
|
||||||
{19, nullptr, "GetLaunchResult"},
|
|
||||||
};
|
|
||||||
// clang-format on
|
|
||||||
|
|
||||||
RegisterHandlers(functions);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
void LoopProcess(Core::System& system) {
|
void LoopProcess(Core::System& system) {
|
||||||
auto server_manager = std::make_unique<ServerManager>(system);
|
auto server_manager = std::make_unique<ServerManager>(system);
|
||||||
|
|
||||||
|
@ -540,7 +510,7 @@ void LoopProcess(Core::System& system) {
|
||||||
server_manager->RegisterNamedService("ns:web", std::make_shared<NS>("ns:web", system));
|
server_manager->RegisterNamedService("ns:web", std::make_shared<NS>("ns:web", system));
|
||||||
server_manager->RegisterNamedService("ns:ro", std::make_shared<NS>("ns:ro", system));
|
server_manager->RegisterNamedService("ns:ro", std::make_shared<NS>("ns:ro", system));
|
||||||
|
|
||||||
server_manager->RegisterNamedService("ns:dev", std::make_shared<NS_DEV>(system));
|
server_manager->RegisterNamedService("ns:dev", std::make_shared<IDevelopInterface>(system));
|
||||||
server_manager->RegisterNamedService("ns:su", std::make_shared<ISystemUpdateInterface>(system));
|
server_manager->RegisterNamedService("ns:su", std::make_shared<ISystemUpdateInterface>(system));
|
||||||
server_manager->RegisterNamedService("ns:vm",
|
server_manager->RegisterNamedService("ns:vm",
|
||||||
std::make_shared<IVulnerabilityManagerInterface>(system));
|
std::make_shared<IVulnerabilityManagerInterface>(system));
|
||||||
|
|
Loading…
Reference in a new issue