From 5f3c03d6a8f9bc83e78025edfd4b20b2f19cb04f Mon Sep 17 00:00:00 2001 From: Liam Date: Wed, 21 Feb 2024 18:42:06 -0500 Subject: olsc: add IDaemonController --- src/core/CMakeLists.txt | 2 ++ src/core/hle/service/olsc/daemon_controller.cpp | 40 +++++++++++++++++++++++++ src/core/hle/service/olsc/daemon_controller.h | 20 +++++++++++++ 3 files changed, 62 insertions(+) create mode 100644 src/core/hle/service/olsc/daemon_controller.cpp create mode 100644 src/core/hle/service/olsc/daemon_controller.h diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index 8221f0d17..36bc9103e 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -860,6 +860,8 @@ add_library(core STATIC hle/service/nvnflinger/ui/graphic_buffer.cpp hle/service/nvnflinger/ui/graphic_buffer.h hle/service/nvnflinger/window.h + hle/service/olsc/daemon_controller.cpp + hle/service/olsc/daemon_controller.h hle/service/olsc/native_handle_holder.cpp hle/service/olsc/native_handle_holder.h hle/service/olsc/olsc_service_for_application.cpp diff --git a/src/core/hle/service/olsc/daemon_controller.cpp b/src/core/hle/service/olsc/daemon_controller.cpp new file mode 100644 index 000000000..7823780a8 --- /dev/null +++ b/src/core/hle/service/olsc/daemon_controller.cpp @@ -0,0 +1,40 @@ +// SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "core/hle/service/cmif_serialization.h" +#include "core/hle/service/olsc/daemon_controller.h" + +namespace Service::OLSC { + +IDaemonController::IDaemonController(Core::System& system_) + : ServiceFramework{system_, "IDaemonController"} { + // clang-format off + static const FunctionInfo functions[] = { + {0, D<&IDaemonController::GetAutoTransferEnabledForAccountAndApplication>, "GetAutoTransferEnabledForAccountAndApplication"}, + {1, nullptr, "SetAutoTransferEnabledForAccountAndApplication"}, + {2, nullptr, "GetGlobalUploadEnabledForAccount"}, + {3, nullptr, "SetGlobalUploadEnabledForAccount"}, + {4, nullptr, "TouchAccount"}, + {5, nullptr, "GetGlobalDownloadEnabledForAccount"}, + {6, nullptr, "SetGlobalDownloadEnabledForAccount"}, + {10, nullptr, "GetForbiddenSaveDataIndication"}, + {11, nullptr, "GetStopperObject"}, + {12, nullptr, "GetState"}, + }; + // clang-format on + + RegisterHandlers(functions); +} + +IDaemonController::~IDaemonController() = default; + +Result IDaemonController::GetAutoTransferEnabledForAccountAndApplication(Out out_is_enabled, + Common::UUID user_id, + u64 application_id) { + LOG_WARNING(Service_OLSC, "(STUBBED) called, user_id={} application_id={:016X}", + user_id.FormattedString(), application_id); + *out_is_enabled = false; + R_SUCCEED(); +} + +} // namespace Service::OLSC diff --git a/src/core/hle/service/olsc/daemon_controller.h b/src/core/hle/service/olsc/daemon_controller.h new file mode 100644 index 000000000..dfad7f52a --- /dev/null +++ b/src/core/hle/service/olsc/daemon_controller.h @@ -0,0 +1,20 @@ +// SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "common/uuid.h" +#include "core/hle/service/cmif_types.h" +#include "core/hle/service/service.h" + +namespace Service::OLSC { + +class IDaemonController final : public ServiceFramework { +public: + explicit IDaemonController(Core::System& system_); + ~IDaemonController() override; + +private: + Result GetAutoTransferEnabledForAccountAndApplication(Out out_is_enabled, + Common::UUID user_id, u64 application_id); +}; + +} // namespace Service::OLSC -- cgit v1.2.3