mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-10-29 10:46:21 +00:00
+23
-14
@@ -49,25 +49,34 @@ public:
|
|||||||
: ServiceFramework{system_, "IFloatingRegistrationRequest"}
|
: ServiceFramework{system_, "IFloatingRegistrationRequest"}
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
// Must be placed after all methods are defined (or declared).
|
||||||
// Define here your functions and methods, please order them.
|
// Define here your functions and methods, please order them.
|
||||||
// Use FindRequestTipc for TIPC handlers.
|
// Use FindRequestTipc for TIPC handlers.
|
||||||
static constexpr auto functions = CreateStaticMap(
|
static constexpr auto functions = CreateStaticMap(
|
||||||
FunctionInfo{0, nullptr, "GetSessionId"},
|
FunctionInfo{0, nullptr, "GetSessionId"},
|
||||||
FunctionInfo{12, nullptr, "GetAccountId"},
|
FunctionInfo{12, nullptr, "GetAccountId"},
|
||||||
FunctionInfo{13, nullptr, "GetLinkedNintendoAccountId"},
|
FunctionInfo{13, nullptr, "GetLinkedNintendoAccountId"},
|
||||||
FunctionInfo{14, nullptr, "GetNickname"},
|
FunctionInfo{14, nullptr, "GetNickname"},
|
||||||
FunctionInfo{15, nullptr, "GetProfileImage"},
|
FunctionInfo{15, nullptr, "GetProfileImage"},
|
||||||
FunctionInfo{16, nullptr, "GetProfileLargeImage", MakeVersionGate({18,0,0})},
|
FunctionInfo{16, nullptr, "GetProfileLargeImage", MakeVersionGate({18,0,0})},
|
||||||
FunctionInfo{21, nullptr, "LoadIdTokenCache"},
|
FunctionInfo{21, nullptr, "LoadIdTokenCache"},
|
||||||
FunctionInfo{100, nullptr, "RegisterUser"},
|
FunctionInfo{100, nullptr, "RegisterUser"},
|
||||||
FunctionInfo{101, nullptr, "RegisterUserWithUid"},
|
FunctionInfo{101, nullptr, "RegisterUserWithUid"},
|
||||||
FunctionInfo{102, nullptr, "RegisterNetworkServiceAccountAsync", MakeVersionGate({4,0,0})},
|
FunctionInfo{102, nullptr, "RegisterNetworkServiceAccountAsync", MakeVersionGate({4,0,0})},
|
||||||
FunctionInfo{103, nullptr, "RegisterNetworkServiceAccountWithUidAsync", MakeVersionGate({4,0,0})},
|
FunctionInfo{103, nullptr, "RegisterNetworkServiceAccountWithUidAsync", MakeVersionGate({4,0,0})},
|
||||||
FunctionInfo{110, nullptr, "SetSystemProgramIdentification"},
|
FunctionInfo{110, nullptr, "SetSystemProgramIdentification"},
|
||||||
FunctionInfo{111, nullptr, "EnsureIdTokenCacheAsync"}
|
FunctionInfo{111, nullptr, "EnsureIdTokenCacheAsync"}
|
||||||
);
|
);
|
||||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||||
return HandlerTableGenerateWithFind(key, functions);
|
return HandlerTableGenerateWithFind(key, functions);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Try to keep service structures local, that is, don't place them on header files if they're only going to be used by a specific service.
|
||||||
|
|
||||||
|
In each `.cpp` file that uses `D<...>/C<...>` CMIF wrapper helpers, remember to include the corresponding instancer, so you don't face linker errors:
|
||||||
|
```c++
|
||||||
|
#include "core/hle/service/cmif_serialization.h"
|
||||||
|
```
|
||||||
|
This will properly instatiate the corresponding wrappers and decompose the provided arguments in the wiring order.
|
||||||
|
|||||||
@@ -14,6 +14,7 @@
|
|||||||
#include "core/hle/service/psc/time/service_manager.h"
|
#include "core/hle/service/psc/time/service_manager.h"
|
||||||
#include "core/hle/service/psc/time/static.h"
|
#include "core/hle/service/psc/time/static.h"
|
||||||
#include "core/hle/service/service.h"
|
#include "core/hle/service/service.h"
|
||||||
|
#include "core/hle/service/cmif_serialization.h"
|
||||||
|
|
||||||
namespace Service::PSC {
|
namespace Service::PSC {
|
||||||
|
|
||||||
@@ -109,6 +110,7 @@ public:
|
|||||||
explicit IPmService(Core::System& system_) : ServiceFramework{system_, "psc:m"} {}
|
explicit IPmService(Core::System& system_) : ServiceFramework{system_, "psc:m"} {}
|
||||||
~IPmService() override = default;
|
~IPmService() override = default;
|
||||||
|
|
||||||
|
private:
|
||||||
Result GetPmModule(Out<SharedPointer<IPmModule>> out_module) {
|
Result GetPmModule(Out<SharedPointer<IPmModule>> out_module) {
|
||||||
LOG_DEBUG(Service_PSC, "called");
|
LOG_DEBUG(Service_PSC, "called");
|
||||||
*out_module = std::make_shared<IPmModule>(system);
|
*out_module = std::make_shared<IPmModule>(system);
|
||||||
|
|||||||
Reference in New Issue
Block a user