// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include "core/hle/service/service.h" namespace Core { class System; } namespace Service::NS { class IApplicationManagerInterface; class NS final : public ServiceFramework { public: explicit NS(const char* name, Core::System& system_); ~NS() override; std::shared_ptr GetApplicationManagerInterface() const; private: template void PushInterface(HLERequestContext& ctx); void PushIApplicationManagerInterface(HLERequestContext& ctx); template std::shared_ptr GetInterface(Args&&... args) const; }; void LoopProcess(Core::System& system); } // namespace Service::NS