glue.cpp 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. // SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #include <memory>
  4. #include "core/core.h"
  5. #include "core/hle/service/glue/arp.h"
  6. #include "core/hle/service/glue/bgtc.h"
  7. #include "core/hle/service/glue/ectx.h"
  8. #include "core/hle/service/glue/glue.h"
  9. #include "core/hle/service/glue/notif.h"
  10. #include "core/hle/service/server_manager.h"
  11. namespace Service::Glue {
  12. void LoopProcess(Core::System& system) {
  13. auto server_manager = std::make_unique<ServerManager>(system);
  14. // ARP
  15. server_manager->RegisterNamedService("arp:r",
  16. std::make_shared<ARP_R>(system, system.GetARPManager()));
  17. server_manager->RegisterNamedService("arp:w",
  18. std::make_shared<ARP_W>(system, system.GetARPManager()));
  19. // BackGround Task Controller
  20. server_manager->RegisterNamedService("bgtc:t", std::make_shared<BGTC_T>(system));
  21. server_manager->RegisterNamedService("bgtc:sc", std::make_shared<BGTC_SC>(system));
  22. // Error Context
  23. server_manager->RegisterNamedService("ectx:aw", std::make_shared<ECTX_AW>(system));
  24. // Notification Services for application
  25. server_manager->RegisterNamedService("notif:a", std::make_shared<NOTIF_A>(system));
  26. ServerManager::RunServer(std::move(server_manager));
  27. }
  28. } // namespace Service::Glue