summaryrefslogtreecommitdiff
path: root/src/core/hle/service/service.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/service/service.cpp')
-rw-r--r--src/core/hle/service/service.cpp50
1 files changed, 22 insertions, 28 deletions
diff --git a/src/core/hle/service/service.cpp b/src/core/hle/service/service.cpp
index 5dce8068e..91f13cd7e 100644
--- a/src/core/hle/service/service.cpp
+++ b/src/core/hle/service/service.cpp
@@ -11,26 +11,17 @@
11#include "core/hle/service/am_app.h" 11#include "core/hle/service/am_app.h"
12#include "core/hle/service/am_net.h" 12#include "core/hle/service/am_net.h"
13#include "core/hle/service/am_sys.h" 13#include "core/hle/service/am_sys.h"
14#include "core/hle/service/apt_a.h"
15#include "core/hle/service/apt_s.h"
16#include "core/hle/service/apt_u.h"
17#include "core/hle/service/boss_p.h" 14#include "core/hle/service/boss_p.h"
18#include "core/hle/service/boss_u.h" 15#include "core/hle/service/boss_u.h"
19#include "core/hle/service/cam_u.h" 16#include "core/hle/service/cam_u.h"
20#include "core/hle/service/cecd_u.h" 17#include "core/hle/service/cecd_u.h"
21#include "core/hle/service/cecd_s.h" 18#include "core/hle/service/cecd_s.h"
22#include "core/hle/service/cfg/cfg_i.h"
23#include "core/hle/service/cfg/cfg_s.h"
24#include "core/hle/service/cfg/cfg_u.h"
25#include "core/hle/service/csnd_snd.h" 19#include "core/hle/service/csnd_snd.h"
26#include "core/hle/service/dsp_dsp.h" 20#include "core/hle/service/dsp_dsp.h"
27#include "core/hle/service/err_f.h" 21#include "core/hle/service/err_f.h"
28#include "core/hle/service/fs/fs_user.h"
29#include "core/hle/service/frd_a.h" 22#include "core/hle/service/frd_a.h"
30#include "core/hle/service/frd_u.h" 23#include "core/hle/service/frd_u.h"
31#include "core/hle/service/gsp_gpu.h" 24#include "core/hle/service/gsp_gpu.h"
32#include "core/hle/service/hid/hid_spvr.h"
33#include "core/hle/service/hid/hid_user.h"
34#include "core/hle/service/gsp_lcd.h" 25#include "core/hle/service/gsp_lcd.h"
35#include "core/hle/service/http_c.h" 26#include "core/hle/service/http_c.h"
36#include "core/hle/service/ir_rst.h" 27#include "core/hle/service/ir_rst.h"
@@ -44,14 +35,17 @@
44#include "core/hle/service/ns_s.h" 35#include "core/hle/service/ns_s.h"
45#include "core/hle/service/nwm_uds.h" 36#include "core/hle/service/nwm_uds.h"
46#include "core/hle/service/pm_app.h" 37#include "core/hle/service/pm_app.h"
47#include "core/hle/service/ptm_play.h"
48#include "core/hle/service/ptm_u.h"
49#include "core/hle/service/ptm_sysm.h"
50#include "core/hle/service/soc_u.h" 38#include "core/hle/service/soc_u.h"
51#include "core/hle/service/srv.h" 39#include "core/hle/service/srv.h"
52#include "core/hle/service/ssl_c.h" 40#include "core/hle/service/ssl_c.h"
53#include "core/hle/service/y2r_u.h" 41#include "core/hle/service/y2r_u.h"
54 42
43#include "core/hle/service/apt/apt.h"
44#include "core/hle/service/fs/archive.h"
45#include "core/hle/service/cfg/cfg.h"
46#include "core/hle/service/hid/hid.h"
47#include "core/hle/service/ptm/ptm.h"
48
55namespace Service { 49namespace Service {
56 50
57std::unordered_map<std::string, Kernel::SharedPtr<Interface>> g_kernel_named_ports; 51std::unordered_map<std::string, Kernel::SharedPtr<Interface>> g_kernel_named_ports;
@@ -60,12 +54,12 @@ std::unordered_map<std::string, Kernel::SharedPtr<Interface>> g_srv_services;
60//////////////////////////////////////////////////////////////////////////////////////////////////// 54////////////////////////////////////////////////////////////////////////////////////////////////////
61// Module interface 55// Module interface
62 56
63static void AddNamedPort(Interface* interface) { 57static void AddNamedPort(Interface* interface_) {
64 g_kernel_named_ports.emplace(interface->GetPortName(), interface); 58 g_kernel_named_ports.emplace(interface_->GetPortName(), interface_);
65} 59}
66 60
67static void AddService(Interface* interface) { 61void AddService(Interface* interface_) {
68 g_srv_services.emplace(interface->GetPortName(), interface); 62 g_srv_services.emplace(interface_->GetPortName(), interface_);
69} 63}
70 64
71/// Initialize ServiceManager 65/// Initialize ServiceManager
@@ -73,31 +67,28 @@ void Init() {
73 AddNamedPort(new SRV::Interface); 67 AddNamedPort(new SRV::Interface);
74 AddNamedPort(new ERR_F::Interface); 68 AddNamedPort(new ERR_F::Interface);
75 69
70 Service::FS::ArchiveInit();
71 Service::CFG::CFGInit();
72 Service::APT::APTInit();
73 Service::PTM::PTMInit();
74 Service::HID::HIDInit();
75
76 AddService(new AC_U::Interface); 76 AddService(new AC_U::Interface);
77 AddService(new ACT_U::Interface); 77 AddService(new ACT_U::Interface);
78 AddService(new AM_APP::Interface); 78 AddService(new AM_APP::Interface);
79 AddService(new AM_NET::Interface); 79 AddService(new AM_NET::Interface);
80 AddService(new AM_SYS::Interface); 80 AddService(new AM_SYS::Interface);
81 AddService(new APT_A::Interface);
82 AddService(new APT_S::Interface);
83 AddService(new APT_U::Interface);
84 AddService(new BOSS_P::Interface); 81 AddService(new BOSS_P::Interface);
85 AddService(new BOSS_U::Interface); 82 AddService(new BOSS_U::Interface);
86 AddService(new CAM_U::Interface); 83 AddService(new CAM_U::Interface);
87 AddService(new CECD_S::Interface); 84 AddService(new CECD_S::Interface);
88 AddService(new CECD_U::Interface); 85 AddService(new CECD_U::Interface);
89 AddService(new CFG_I::Interface);
90 AddService(new CFG_S::Interface);
91 AddService(new CFG_U::Interface);
92 AddService(new CSND_SND::Interface); 86 AddService(new CSND_SND::Interface);
93 AddService(new DSP_DSP::Interface); 87 AddService(new DSP_DSP::Interface);
94 AddService(new FRD_A::Interface); 88 AddService(new FRD_A::Interface);
95 AddService(new FRD_U::Interface); 89 AddService(new FRD_U::Interface);
96 AddService(new FS::FSUserInterface);
97 AddService(new GSP_GPU::Interface); 90 AddService(new GSP_GPU::Interface);
98 AddService(new GSP_LCD::Interface); 91 AddService(new GSP_LCD::Interface);
99 AddService(new HID_User::Interface);
100 AddService(new HID_SPVR::Interface);
101 AddService(new HTTP_C::Interface); 92 AddService(new HTTP_C::Interface);
102 AddService(new IR_RST::Interface); 93 AddService(new IR_RST::Interface);
103 AddService(new IR_U::Interface); 94 AddService(new IR_U::Interface);
@@ -110,9 +101,6 @@ void Init() {
110 AddService(new NS_S::Interface); 101 AddService(new NS_S::Interface);
111 AddService(new NWM_UDS::Interface); 102 AddService(new NWM_UDS::Interface);
112 AddService(new PM_APP::Interface); 103 AddService(new PM_APP::Interface);
113 AddService(new PTM_PLAY::Interface);
114 AddService(new PTM_U::Interface);
115 AddService(new PTM_SYSM::Interface);
116 AddService(new SOC_U::Interface); 104 AddService(new SOC_U::Interface);
117 AddService(new SSL_C::Interface); 105 AddService(new SSL_C::Interface);
118 AddService(new Y2R_U::Interface); 106 AddService(new Y2R_U::Interface);
@@ -122,6 +110,12 @@ void Init() {
122 110
123/// Shutdown ServiceManager 111/// Shutdown ServiceManager
124void Shutdown() { 112void Shutdown() {
113 Service::HID::HIDShutdown();
114 Service::PTM::PTMShutdown();
115 Service::APT::APTShutdown();
116 Service::CFG::CFGShutdown();
117 Service::FS::ArchiveShutdown();
118
125 g_srv_services.clear(); 119 g_srv_services.clear();
126 g_kernel_named_ports.clear(); 120 g_kernel_named_ports.clear();
127 LOG_DEBUG(Service, "shutdown OK"); 121 LOG_DEBUG(Service, "shutdown OK");