mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-09-26 11:08:02 +00:00
@@ -12,17 +12,6 @@
|
||||
namespace Service::Account {
|
||||
IAsyncContext::IAsyncContext(Core::System& system_)
|
||||
: ServiceFramework{system_, "IAsyncContext"}, service_context{system_, "IAsyncContext"} {
|
||||
// clang-format off
|
||||
static const FunctionInfo functions[] = {
|
||||
{0, &IAsyncContext::GetSystemEvent, "GetSystemEvent"},
|
||||
{1, &IAsyncContext::Cancel, "Cancel"},
|
||||
{2, &IAsyncContext::HasDone, "HasDone"},
|
||||
{3, &IAsyncContext::GetResult, "GetResult"},
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
RegisterHandlers(functions);
|
||||
|
||||
completion_event = service_context.CreateEvent("IAsyncContext:CompletionEvent");
|
||||
}
|
||||
|
||||
|
||||
@@ -30,6 +30,16 @@ protected:
|
||||
|
||||
void MarkComplete();
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, &IAsyncContext::GetSystemEvent, "GetSystemEvent"},
|
||||
FunctionInfo{1, &IAsyncContext::Cancel, "Cancel"},
|
||||
FunctionInfo{2, &IAsyncContext::HasDone, "HasDone"},
|
||||
FunctionInfo{3, &IAsyncContext::GetResult, "GetResult"}
|
||||
);
|
||||
|
||||
KernelHelpers::ServiceContext service_context;
|
||||
|
||||
std::atomic<bool> is_complete{false};
|
||||
|
||||
@@ -512,14 +512,14 @@ public:
|
||||
, m_nrr_kind(nrr_kind)
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
|
||||
~RoInterface() {
|
||||
m_ro->UnregisterProcess(system.Kernel(), m_context_id);
|
||||
}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
|
||||
Result MapManualLoadModuleMemory(Out<u64> out_load_address, ClientProcessId client_pid,
|
||||
u64 nro_address, u64 nro_size, u64 bss_address, u64 bss_size) {
|
||||
R_TRY(m_ro->ValidateProcess(m_context_id, *client_pid));
|
||||
@@ -576,12 +576,14 @@ class IDebugMonitorInterface final : public ServiceFramework<IDebugMonitorInterf
|
||||
public:
|
||||
explicit IDebugMonitorInterface(Core::System& system_)
|
||||
: ServiceFramework{system_, "ro:dmnt"}
|
||||
{
|
||||
static const FunctionInfo functions[] = {
|
||||
FunctionInfo{0, nullptr, "GetProcessModuleInfo" },
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, nullptr, "GetProcessModuleInfo" }
|
||||
);
|
||||
};
|
||||
|
||||
void LoopProcess(Core::System& system) {
|
||||
|
||||
@@ -12,62 +12,9 @@
|
||||
|
||||
namespace Service::VI {
|
||||
|
||||
ISystemDisplayService::ISystemDisplayService(Core::System& system_,
|
||||
std::shared_ptr<Container> container)
|
||||
: ServiceFramework{system_, "ISystemDisplayService"}, m_container{std::move(container)} {
|
||||
// clang-format off
|
||||
static const FunctionInfo functions[] = {
|
||||
{1200, nullptr, "GetZOrderCountMin"},
|
||||
{1202, nullptr, "GetZOrderCountMax"},
|
||||
{1203, nullptr, "GetDisplayLogicalResolution"},
|
||||
{1204, nullptr, "SetDisplayMagnification"},
|
||||
{2201, nullptr, "SetLayerPosition"},
|
||||
{2203, nullptr, "SetLayerSize"},
|
||||
{2204, C<&ISystemDisplayService::GetLayerZ>, "GetLayerZ"},
|
||||
{2205, C<&ISystemDisplayService::SetLayerZ>, "SetLayerZ"},
|
||||
{2207, C<&ISystemDisplayService::SetLayerVisibility>, "SetLayerVisibility"},
|
||||
{2209, nullptr, "SetLayerAlpha"},
|
||||
{2210, nullptr, "SetLayerPositionAndSize"},
|
||||
{2312, nullptr, "CreateStrayLayer"},
|
||||
{2400, nullptr, "OpenIndirectLayer"},
|
||||
{2401, nullptr, "CloseIndirectLayer"},
|
||||
{2402, nullptr, "FlipIndirectLayer"},
|
||||
{3000, C<&ISystemDisplayService::ListDisplayModes>, "ListDisplayModes"},
|
||||
{3001, nullptr, "ListDisplayRgbRanges"},
|
||||
{3002, nullptr, "ListDisplayContentTypes"},
|
||||
{3200, C<&ISystemDisplayService::GetDisplayMode>, "GetDisplayMode"},
|
||||
{3201, nullptr, "SetDisplayMode"},
|
||||
{3202, nullptr, "GetDisplayUnderscan"},
|
||||
{3203, nullptr, "SetDisplayUnderscan"},
|
||||
{3204, nullptr, "GetDisplayContentType"},
|
||||
{3205, nullptr, "SetDisplayContentType"},
|
||||
{3206, nullptr, "GetDisplayRgbRange"},
|
||||
{3207, nullptr, "SetDisplayRgbRange"},
|
||||
{3208, nullptr, "GetDisplayCmuMode"},
|
||||
{3209, nullptr, "SetDisplayCmuMode"},
|
||||
{3210, nullptr, "GetDisplayContrastRatio"},
|
||||
{3211, nullptr, "SetDisplayContrastRatio"},
|
||||
{3214, nullptr, "GetDisplayGamma"},
|
||||
{3215, nullptr, "SetDisplayGamma"},
|
||||
{3216, nullptr, "GetDisplayCmuLuma"},
|
||||
{3217, nullptr, "SetDisplayCmuLuma"},
|
||||
{3218, nullptr, "SetDisplayCrcMode"},
|
||||
{6013, nullptr, "GetLayerPresentationSubmissionTimestamps"},
|
||||
{8225, C<&ISystemDisplayService::GetSharedBufferMemoryHandleId>, "GetSharedBufferMemoryHandleId"},
|
||||
{8250, C<&ISystemDisplayService::OpenSharedLayer>, "OpenSharedLayer"},
|
||||
{8251, nullptr, "CloseSharedLayer"},
|
||||
{8252, C<&ISystemDisplayService::ConnectSharedLayer>, "ConnectSharedLayer"},
|
||||
{8253, nullptr, "DisconnectSharedLayer"},
|
||||
{8254, C<&ISystemDisplayService::AcquireSharedFrameBuffer>, "AcquireSharedFrameBuffer"},
|
||||
{8255, C<&ISystemDisplayService::PresentSharedFrameBuffer>, "PresentSharedFrameBuffer"},
|
||||
{8256, C<&ISystemDisplayService::GetSharedFrameBufferAcquirableEvent>, "GetSharedFrameBufferAcquirableEvent"},
|
||||
{8257, nullptr, "FillSharedFrameBufferColor"},
|
||||
{8258, C<&ISystemDisplayService::CancelSharedFrameBuffer>, "CancelSharedFrameBuffer"},
|
||||
{9000, nullptr, "GetDp2hdmiController"},
|
||||
};
|
||||
// clang-format on
|
||||
RegisterHandlers(functions);
|
||||
}
|
||||
ISystemDisplayService::ISystemDisplayService(Core::System& system_, std::shared_ptr<Container> container)
|
||||
: ServiceFramework{system_, "ISystemDisplayService"}, m_container{std::move(container)}
|
||||
{}
|
||||
|
||||
ISystemDisplayService::~ISystemDisplayService() = default;
|
||||
|
||||
|
||||
@@ -47,6 +47,58 @@ private:
|
||||
Result CancelSharedFrameBuffer(u64 layer_id, s64 slot);
|
||||
|
||||
private:
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{1200, nullptr, "GetZOrderCountMin"},
|
||||
FunctionInfo{1202, nullptr, "GetZOrderCountMax"},
|
||||
FunctionInfo{1203, nullptr, "GetDisplayLogicalResolution"},
|
||||
FunctionInfo{1204, nullptr, "SetDisplayMagnification"},
|
||||
FunctionInfo{2201, nullptr, "SetLayerPosition"},
|
||||
FunctionInfo{2203, nullptr, "SetLayerSize"},
|
||||
FunctionInfo{2204, C<&ISystemDisplayService::GetLayerZ>, "GetLayerZ"},
|
||||
FunctionInfo{2205, C<&ISystemDisplayService::SetLayerZ>, "SetLayerZ"},
|
||||
FunctionInfo{2207, C<&ISystemDisplayService::SetLayerVisibility>, "SetLayerVisibility"},
|
||||
FunctionInfo{2209, nullptr, "SetLayerAlpha"},
|
||||
FunctionInfo{2210, nullptr, "SetLayerPositionAndSize"},
|
||||
FunctionInfo{2312, nullptr, "CreateStrayLayer"},
|
||||
FunctionInfo{2400, nullptr, "OpenIndirectLayer"},
|
||||
FunctionInfo{2401, nullptr, "CloseIndirectLayer"},
|
||||
FunctionInfo{2402, nullptr, "FlipIndirectLayer"},
|
||||
FunctionInfo{3000, C<&ISystemDisplayService::ListDisplayModes>, "ListDisplayModes"},
|
||||
FunctionInfo{3001, nullptr, "ListDisplayRgbRanges"},
|
||||
FunctionInfo{3002, nullptr, "ListDisplayContentTypes"},
|
||||
FunctionInfo{3200, C<&ISystemDisplayService::GetDisplayMode>, "GetDisplayMode"},
|
||||
FunctionInfo{3201, nullptr, "SetDisplayMode"},
|
||||
FunctionInfo{3202, nullptr, "GetDisplayUnderscan"},
|
||||
FunctionInfo{3203, nullptr, "SetDisplayUnderscan"},
|
||||
FunctionInfo{3204, nullptr, "GetDisplayContentType"},
|
||||
FunctionInfo{3205, nullptr, "SetDisplayContentType"},
|
||||
FunctionInfo{3206, nullptr, "GetDisplayRgbRange"},
|
||||
FunctionInfo{3207, nullptr, "SetDisplayRgbRange"},
|
||||
FunctionInfo{3208, nullptr, "GetDisplayCmuMode"},
|
||||
FunctionInfo{3209, nullptr, "SetDisplayCmuMode"},
|
||||
FunctionInfo{3210, nullptr, "GetDisplayContrastRatio"},
|
||||
FunctionInfo{3211, nullptr, "SetDisplayContrastRatio"},
|
||||
FunctionInfo{3214, nullptr, "GetDisplayGamma"},
|
||||
FunctionInfo{3215, nullptr, "SetDisplayGamma"},
|
||||
FunctionInfo{3216, nullptr, "GetDisplayCmuLuma"},
|
||||
FunctionInfo{3217, nullptr, "SetDisplayCmuLuma"},
|
||||
FunctionInfo{3218, nullptr, "SetDisplayCrcMode"},
|
||||
FunctionInfo{6013, nullptr, "GetLayerPresentationSubmissionTimestamps"},
|
||||
FunctionInfo{8225, C<&ISystemDisplayService::GetSharedBufferMemoryHandleId>, "GetSharedBufferMemoryHandleId"},
|
||||
FunctionInfo{8250, C<&ISystemDisplayService::OpenSharedLayer>, "OpenSharedLayer"},
|
||||
FunctionInfo{8251, nullptr, "CloseSharedLayer"},
|
||||
FunctionInfo{8252, C<&ISystemDisplayService::ConnectSharedLayer>, "ConnectSharedLayer"},
|
||||
FunctionInfo{8253, nullptr, "DisconnectSharedLayer"},
|
||||
FunctionInfo{8254, C<&ISystemDisplayService::AcquireSharedFrameBuffer>, "AcquireSharedFrameBuffer"},
|
||||
FunctionInfo{8255, C<&ISystemDisplayService::PresentSharedFrameBuffer>, "PresentSharedFrameBuffer"},
|
||||
FunctionInfo{8256, C<&ISystemDisplayService::GetSharedFrameBufferAcquirableEvent>, "GetSharedFrameBufferAcquirableEvent"},
|
||||
FunctionInfo{8257, nullptr, "FillSharedFrameBufferColor"},
|
||||
FunctionInfo{8258, C<&ISystemDisplayService::CancelSharedFrameBuffer>, "CancelSharedFrameBuffer"},
|
||||
FunctionInfo{9000, nullptr, "GetDp2hdmiController"}
|
||||
);
|
||||
const std::shared_ptr<Container> m_container;
|
||||
};
|
||||
|
||||
|
||||
@@ -12,13 +12,8 @@
|
||||
namespace Service::VI {
|
||||
|
||||
ISystemRootService::ISystemRootService(Core::System& system_, std::shared_ptr<Container> container)
|
||||
: ServiceFramework{system_, "vi:s"}, m_container{std::move(container)} {
|
||||
static const FunctionInfo functions[] = {
|
||||
{1, C<&ISystemRootService::GetDisplayService>, "GetDisplayService"},
|
||||
{3, nullptr, "GetDisplayServiceWithProxyNameExchange"},
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
}
|
||||
: ServiceFramework{system_, "vi:s"}, m_container{std::move(container)}
|
||||
{}
|
||||
|
||||
ISystemRootService::~ISystemRootService() = default;
|
||||
|
||||
|
||||
@@ -26,6 +26,13 @@ private:
|
||||
Out<SharedPointer<IApplicationDisplayService>> out_application_display_service,
|
||||
Policy policy);
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{1, C<&ISystemRootService::GetDisplayService>, "GetDisplayService"},
|
||||
FunctionInfo{3, nullptr, "GetDisplayServiceWithProxyNameExchange"}
|
||||
);
|
||||
const std::shared_ptr<Container> m_container;
|
||||
};
|
||||
|
||||
|
||||
+192
-176
@@ -16,232 +16,248 @@ class ILocalManager final : public ServiceFramework<ILocalManager> {
|
||||
public:
|
||||
explicit ILocalManager(Core::System& system_)
|
||||
: ServiceFramework{system_, "wlan:lcl"}
|
||||
{
|
||||
static const FunctionInfo functions[] = {
|
||||
FunctionInfo{0, nullptr, "OpenMasterMode" },
|
||||
FunctionInfo{0, nullptr, "OpenMode_2" },
|
||||
FunctionInfo{1, nullptr, "CloseMasterMode" },
|
||||
FunctionInfo{1, nullptr, "CloseMode_2" },
|
||||
FunctionInfo{2, nullptr, "OpenClientMode" },
|
||||
FunctionInfo{2, nullptr, "GetMacAddress_2" },
|
||||
FunctionInfo{3, nullptr, "CloseClientMode" },
|
||||
FunctionInfo{3, nullptr, "CreateBss" },
|
||||
FunctionInfo{4, nullptr, "OpenSpectatorMode" },
|
||||
FunctionInfo{4, nullptr, "DestroyBss" },
|
||||
FunctionInfo{5, nullptr, "CloseSpectatorMode" },
|
||||
FunctionInfo{5, nullptr, "StartScan_2" },
|
||||
FunctionInfo{6, nullptr, "GetMacAddress_2" },
|
||||
FunctionInfo{6, nullptr, "StopScan_2" },
|
||||
FunctionInfo{7, nullptr, "CreateBss" },
|
||||
FunctionInfo{7, nullptr, "Connect_2" },
|
||||
FunctionInfo{8, nullptr, "DestroyBss" },
|
||||
FunctionInfo{8, nullptr, "CancelConnect_2" },
|
||||
FunctionInfo{9, nullptr, "StartScan_2" },
|
||||
FunctionInfo{9, nullptr, "Join" },
|
||||
FunctionInfo{10, nullptr, "StopScan_2" },
|
||||
FunctionInfo{10, nullptr, "CancelJoin" },
|
||||
FunctionInfo{11, nullptr, "Connect_2" },
|
||||
FunctionInfo{11, nullptr, "Disconnect_2" },
|
||||
FunctionInfo{12, nullptr, "CancelConnect_2" },
|
||||
FunctionInfo{12, nullptr, "SetBeaconLostCount" },
|
||||
FunctionInfo{13, nullptr, "Join" },
|
||||
FunctionInfo{13, nullptr, "GetSystemEvent_2" },
|
||||
FunctionInfo{14, nullptr, "CancelJoin" },
|
||||
FunctionInfo{14, nullptr, "GetConnectionStatus_2" },
|
||||
FunctionInfo{15, nullptr, "Disconnect_2" },
|
||||
FunctionInfo{15, nullptr, "GetClientStatus" },
|
||||
FunctionInfo{16, nullptr, "SetBeaconLostCount" },
|
||||
FunctionInfo{16, nullptr, "GetBssIndicationEvent" },
|
||||
FunctionInfo{17, nullptr, "GetSystemEvent_2" },
|
||||
FunctionInfo{17, nullptr, "GetBssIndicationInfo" },
|
||||
FunctionInfo{18, nullptr, "GetConnectionStatus_2" },
|
||||
FunctionInfo{18, nullptr, "GetState_2" },
|
||||
FunctionInfo{19, nullptr, "GetClientStatus" },
|
||||
FunctionInfo{19, nullptr, "GetAllowedChannels" },
|
||||
FunctionInfo{20, nullptr, "GetBssIndicationEvent" },
|
||||
FunctionInfo{20, nullptr, "AddIe" },
|
||||
FunctionInfo{21, nullptr, "GetBssIndicationInfo" },
|
||||
FunctionInfo{21, nullptr, "DeleteIe" },
|
||||
FunctionInfo{22, nullptr, "GetState_2" },
|
||||
FunctionInfo{22, nullptr, "PutFrameRaw" },
|
||||
FunctionInfo{23, nullptr, "GetAllowedChannels" },
|
||||
FunctionInfo{23, nullptr, "CancelGetFrame" },
|
||||
FunctionInfo{24, nullptr, "AddIe" },
|
||||
FunctionInfo{24, nullptr, "CreateRxEntry" },
|
||||
FunctionInfo{25, nullptr, "DeleteIe" },
|
||||
FunctionInfo{25, nullptr, "DeleteRxEntry" },
|
||||
FunctionInfo{26, nullptr, "PutFrameRaw" },
|
||||
FunctionInfo{26, nullptr, "AddEthertypeToRxEntry" },
|
||||
FunctionInfo{27, nullptr, "CancelGetFrame" },
|
||||
FunctionInfo{27, nullptr, "DeleteEthertypeFromRxEntry" },
|
||||
FunctionInfo{28, nullptr, "CreateRxEntry" },
|
||||
FunctionInfo{28, nullptr, "AddMatchingDataToRxEntry" },
|
||||
FunctionInfo{29, nullptr, "DeleteRxEntry" },
|
||||
FunctionInfo{29, nullptr, "RemoveMatchingDataFromRxEntry" },
|
||||
FunctionInfo{30, nullptr, "AddEthertypeToRxEntry" },
|
||||
FunctionInfo{30, nullptr, "GetScanResult_2" },
|
||||
FunctionInfo{31, nullptr, "DeleteEthertypeFromRxEntry" },
|
||||
FunctionInfo{31, nullptr, "PutActionFrameOneShot" },
|
||||
FunctionInfo{32, nullptr, "AddMatchingDataToRxEntry" },
|
||||
FunctionInfo{32, nullptr, "SetActionFrameWithBeacon" },
|
||||
FunctionInfo{33, nullptr, "RemoveMatchingDataFromRxEntry" },
|
||||
FunctionInfo{33, nullptr, "CancelActionFrameWithBeacon" },
|
||||
FunctionInfo{34, nullptr, "GetScanResult_2" },
|
||||
FunctionInfo{34, nullptr, "CreateRxEntryForActionFrame" },
|
||||
FunctionInfo{35, nullptr, "PutActionFrameOneShot" },
|
||||
FunctionInfo{35, nullptr, "DeleteRxEntryForActionFrame" },
|
||||
FunctionInfo{36, nullptr, "SetActionFrameWithBeacon" },
|
||||
FunctionInfo{36, nullptr, "AddSubtypeToRxEntryForActionFrame" },
|
||||
FunctionInfo{37, nullptr, "CancelActionFrameWithBeacon" },
|
||||
FunctionInfo{37, nullptr, "DeleteSubtypeFromRxEntryForActionFrame" },
|
||||
FunctionInfo{38, nullptr, "CreateRxEntryForActionFrame" },
|
||||
FunctionInfo{38, nullptr, "CancelGetActionFrame" },
|
||||
FunctionInfo{39, nullptr, "DeleteRxEntryForActionFrame" },
|
||||
FunctionInfo{39, nullptr, "GetRssi_2" },
|
||||
FunctionInfo{40, nullptr, "AddSubtypeToRxEntryForActionFrame" },
|
||||
FunctionInfo{40, nullptr, "SetMaxAssociationNumber" },
|
||||
FunctionInfo{41, nullptr, "DeleteSubtypeFromRxEntryForActionFrame" },
|
||||
FunctionInfo{41, nullptr, "Cmd41" },
|
||||
FunctionInfo{42, nullptr, "CancelGetActionFrame" },
|
||||
FunctionInfo{42, nullptr, "Cmd42" },
|
||||
FunctionInfo{43, nullptr, "GetRssi_2" },
|
||||
FunctionInfo{43, nullptr, "Cmd43" },
|
||||
FunctionInfo{44, nullptr, "SetMaxAssociationNumber" },
|
||||
FunctionInfo{45, nullptr, "OpenLcsMasterMode" },
|
||||
FunctionInfo{46, nullptr, "CloseLcsMasterMode" },
|
||||
FunctionInfo{47, nullptr, "OpenLcsClientMode" },
|
||||
FunctionInfo{48, nullptr, "CloseLcsClientMode" },
|
||||
FunctionInfo{49, nullptr, "GetChannelStats" },
|
||||
FunctionInfo{50, nullptr, "Cmd50" },
|
||||
FunctionInfo{51, nullptr, "Cmd51" },
|
||||
FunctionInfo{52, nullptr, "Cmd52" },
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, nullptr, "OpenMasterMode" },
|
||||
FunctionInfo{0, nullptr, "OpenMode_2" },
|
||||
FunctionInfo{1, nullptr, "CloseMasterMode" },
|
||||
FunctionInfo{1, nullptr, "CloseMode_2" },
|
||||
FunctionInfo{2, nullptr, "OpenClientMode" },
|
||||
FunctionInfo{2, nullptr, "GetMacAddress_2" },
|
||||
FunctionInfo{3, nullptr, "CloseClientMode" },
|
||||
FunctionInfo{3, nullptr, "CreateBss" },
|
||||
FunctionInfo{4, nullptr, "OpenSpectatorMode" },
|
||||
FunctionInfo{4, nullptr, "DestroyBss" },
|
||||
FunctionInfo{5, nullptr, "CloseSpectatorMode" },
|
||||
FunctionInfo{5, nullptr, "StartScan_2" },
|
||||
FunctionInfo{6, nullptr, "GetMacAddress_2" },
|
||||
FunctionInfo{6, nullptr, "StopScan_2" },
|
||||
FunctionInfo{7, nullptr, "CreateBss" },
|
||||
FunctionInfo{7, nullptr, "Connect_2" },
|
||||
FunctionInfo{8, nullptr, "DestroyBss" },
|
||||
FunctionInfo{8, nullptr, "CancelConnect_2" },
|
||||
FunctionInfo{9, nullptr, "StartScan_2" },
|
||||
FunctionInfo{9, nullptr, "Join" },
|
||||
FunctionInfo{10, nullptr, "StopScan_2" },
|
||||
FunctionInfo{10, nullptr, "CancelJoin" },
|
||||
FunctionInfo{11, nullptr, "Connect_2" },
|
||||
FunctionInfo{11, nullptr, "Disconnect_2" },
|
||||
FunctionInfo{12, nullptr, "CancelConnect_2" },
|
||||
FunctionInfo{12, nullptr, "SetBeaconLostCount" },
|
||||
FunctionInfo{13, nullptr, "Join" },
|
||||
FunctionInfo{13, nullptr, "GetSystemEvent_2" },
|
||||
FunctionInfo{14, nullptr, "CancelJoin" },
|
||||
FunctionInfo{14, nullptr, "GetConnectionStatus_2" },
|
||||
FunctionInfo{15, nullptr, "Disconnect_2" },
|
||||
FunctionInfo{15, nullptr, "GetClientStatus" },
|
||||
FunctionInfo{16, nullptr, "SetBeaconLostCount" },
|
||||
FunctionInfo{16, nullptr, "GetBssIndicationEvent" },
|
||||
FunctionInfo{17, nullptr, "GetSystemEvent_2" },
|
||||
FunctionInfo{17, nullptr, "GetBssIndicationInfo" },
|
||||
FunctionInfo{18, nullptr, "GetConnectionStatus_2" },
|
||||
FunctionInfo{18, nullptr, "GetState_2" },
|
||||
FunctionInfo{19, nullptr, "GetClientStatus" },
|
||||
FunctionInfo{19, nullptr, "GetAllowedChannels" },
|
||||
FunctionInfo{20, nullptr, "GetBssIndicationEvent" },
|
||||
FunctionInfo{20, nullptr, "AddIe" },
|
||||
FunctionInfo{21, nullptr, "GetBssIndicationInfo" },
|
||||
FunctionInfo{21, nullptr, "DeleteIe" },
|
||||
FunctionInfo{22, nullptr, "GetState_2" },
|
||||
FunctionInfo{22, nullptr, "PutFrameRaw" },
|
||||
FunctionInfo{23, nullptr, "GetAllowedChannels" },
|
||||
FunctionInfo{23, nullptr, "CancelGetFrame" },
|
||||
FunctionInfo{24, nullptr, "AddIe" },
|
||||
FunctionInfo{24, nullptr, "CreateRxEntry" },
|
||||
FunctionInfo{25, nullptr, "DeleteIe" },
|
||||
FunctionInfo{25, nullptr, "DeleteRxEntry" },
|
||||
FunctionInfo{26, nullptr, "PutFrameRaw" },
|
||||
FunctionInfo{26, nullptr, "AddEthertypeToRxEntry" },
|
||||
FunctionInfo{27, nullptr, "CancelGetFrame" },
|
||||
FunctionInfo{27, nullptr, "DeleteEthertypeFromRxEntry" },
|
||||
FunctionInfo{28, nullptr, "CreateRxEntry" },
|
||||
FunctionInfo{28, nullptr, "AddMatchingDataToRxEntry" },
|
||||
FunctionInfo{29, nullptr, "DeleteRxEntry" },
|
||||
FunctionInfo{29, nullptr, "RemoveMatchingDataFromRxEntry" },
|
||||
FunctionInfo{30, nullptr, "AddEthertypeToRxEntry" },
|
||||
FunctionInfo{30, nullptr, "GetScanResult_2" },
|
||||
FunctionInfo{31, nullptr, "DeleteEthertypeFromRxEntry" },
|
||||
FunctionInfo{31, nullptr, "PutActionFrameOneShot" },
|
||||
FunctionInfo{32, nullptr, "AddMatchingDataToRxEntry" },
|
||||
FunctionInfo{32, nullptr, "SetActionFrameWithBeacon" },
|
||||
FunctionInfo{33, nullptr, "RemoveMatchingDataFromRxEntry" },
|
||||
FunctionInfo{33, nullptr, "CancelActionFrameWithBeacon" },
|
||||
FunctionInfo{34, nullptr, "GetScanResult_2" },
|
||||
FunctionInfo{34, nullptr, "CreateRxEntryForActionFrame" },
|
||||
FunctionInfo{35, nullptr, "PutActionFrameOneShot" },
|
||||
FunctionInfo{35, nullptr, "DeleteRxEntryForActionFrame" },
|
||||
FunctionInfo{36, nullptr, "SetActionFrameWithBeacon" },
|
||||
FunctionInfo{36, nullptr, "AddSubtypeToRxEntryForActionFrame" },
|
||||
FunctionInfo{37, nullptr, "CancelActionFrameWithBeacon" },
|
||||
FunctionInfo{37, nullptr, "DeleteSubtypeFromRxEntryForActionFrame" },
|
||||
FunctionInfo{38, nullptr, "CreateRxEntryForActionFrame" },
|
||||
FunctionInfo{38, nullptr, "CancelGetActionFrame" },
|
||||
FunctionInfo{39, nullptr, "DeleteRxEntryForActionFrame" },
|
||||
FunctionInfo{39, nullptr, "GetRssi_2" },
|
||||
FunctionInfo{40, nullptr, "AddSubtypeToRxEntryForActionFrame" },
|
||||
FunctionInfo{40, nullptr, "SetMaxAssociationNumber" },
|
||||
FunctionInfo{41, nullptr, "DeleteSubtypeFromRxEntryForActionFrame" },
|
||||
FunctionInfo{41, nullptr, "Cmd41" },
|
||||
FunctionInfo{42, nullptr, "CancelGetActionFrame" },
|
||||
FunctionInfo{42, nullptr, "Cmd42" },
|
||||
FunctionInfo{43, nullptr, "GetRssi_2" },
|
||||
FunctionInfo{43, nullptr, "Cmd43" },
|
||||
FunctionInfo{44, nullptr, "SetMaxAssociationNumber" },
|
||||
FunctionInfo{45, nullptr, "OpenLcsMasterMode" },
|
||||
FunctionInfo{46, nullptr, "CloseLcsMasterMode" },
|
||||
FunctionInfo{47, nullptr, "OpenLcsClientMode" },
|
||||
FunctionInfo{48, nullptr, "CloseLcsClientMode" },
|
||||
FunctionInfo{49, nullptr, "GetChannelStats" },
|
||||
FunctionInfo{50, nullptr, "Cmd50" },
|
||||
FunctionInfo{51, nullptr, "Cmd51" },
|
||||
FunctionInfo{52, nullptr, "Cmd52" }
|
||||
);
|
||||
};
|
||||
|
||||
class ILocalGetFrame final : public ServiceFramework<ILocalGetFrame> {
|
||||
public:
|
||||
explicit ILocalGetFrame(Core::System& system_)
|
||||
: ServiceFramework{system_, "wlan:lg"}
|
||||
{
|
||||
static const FunctionInfo functions[] = {
|
||||
FunctionInfo{0, nullptr, "GetFrameRaw" },
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, nullptr, "GetFrameRaw" }
|
||||
);
|
||||
};
|
||||
|
||||
class ILocalGetActionFrame final : public ServiceFramework<ILocalGetActionFrame> {
|
||||
public:
|
||||
explicit ILocalGetActionFrame(Core::System& system_)
|
||||
: ServiceFramework{system_, "wlan:lga"}
|
||||
{
|
||||
static const FunctionInfo functions[] = {
|
||||
FunctionInfo{0, nullptr, "GetActionFrame" },
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, nullptr, "GetActionFrame" }
|
||||
);
|
||||
};
|
||||
|
||||
class ISocketGetFrame final : public ServiceFramework<ISocketGetFrame> {
|
||||
public:
|
||||
explicit ISocketGetFrame(Core::System& system_)
|
||||
: ServiceFramework{system_, "wlan:sg"}
|
||||
{
|
||||
static const FunctionInfo functions[] = {
|
||||
FunctionInfo{0, nullptr, "GetFrameRaw" },
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, nullptr, "GetFrameRaw" }
|
||||
);
|
||||
};
|
||||
|
||||
class ISocketManager final : public ServiceFramework<ISocketManager> {
|
||||
public:
|
||||
explicit ISocketManager(Core::System& system_)
|
||||
: ServiceFramework{system_, "wlan:soc"}
|
||||
{
|
||||
static const FunctionInfo functions[] = {
|
||||
FunctionInfo{0, nullptr, "PutFrameRaw_2" },
|
||||
FunctionInfo{1, nullptr, "CancelGetFrame_2" },
|
||||
FunctionInfo{2, nullptr, "CreateRxEntry_2" },
|
||||
FunctionInfo{3, nullptr, "DeleteRxEntry_2" },
|
||||
FunctionInfo{4, nullptr, "AddEthertypeToRxEntry_2" },
|
||||
FunctionInfo{5, nullptr, "DeleteEthertypeFromRxEntry_2" },
|
||||
FunctionInfo{6, nullptr, "GetMacAddress_3" },
|
||||
FunctionInfo{7, nullptr, "SwitchTsfTimerFunction" },
|
||||
FunctionInfo{8, nullptr, "GetDeltaTimeBetweenSystemAndTsf" },
|
||||
FunctionInfo{9, nullptr, "RegisterSharedMemory" },
|
||||
FunctionInfo{10, nullptr, "UnregisterSharedMemory" },
|
||||
FunctionInfo{11, nullptr, "EnableSharedMemory" },
|
||||
FunctionInfo{12, nullptr, "SetMulticastFilter" },
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, nullptr, "PutFrameRaw_2" },
|
||||
FunctionInfo{1, nullptr, "CancelGetFrame_2" },
|
||||
FunctionInfo{2, nullptr, "CreateRxEntry_2" },
|
||||
FunctionInfo{3, nullptr, "DeleteRxEntry_2" },
|
||||
FunctionInfo{4, nullptr, "AddEthertypeToRxEntry_2" },
|
||||
FunctionInfo{5, nullptr, "DeleteEthertypeFromRxEntry_2" },
|
||||
FunctionInfo{6, nullptr, "GetMacAddress_3" },
|
||||
FunctionInfo{7, nullptr, "SwitchTsfTimerFunction" },
|
||||
FunctionInfo{8, nullptr, "GetDeltaTimeBetweenSystemAndTsf" },
|
||||
FunctionInfo{9, nullptr, "RegisterSharedMemory" },
|
||||
FunctionInfo{10, nullptr, "UnregisterSharedMemory" },
|
||||
FunctionInfo{11, nullptr, "EnableSharedMemory" },
|
||||
FunctionInfo{12, nullptr, "SetMulticastFilter" }
|
||||
);
|
||||
};
|
||||
|
||||
class IDetectManager final : public ServiceFramework<IDetectManager> {
|
||||
public:
|
||||
explicit IDetectManager(Core::System& system_)
|
||||
: ServiceFramework{system_, "wlan:dtc"}
|
||||
{
|
||||
static const FunctionInfo functions[] = {
|
||||
FunctionInfo{0, nullptr, "Cmd0" },
|
||||
FunctionInfo{1, nullptr, "Cmd1" },
|
||||
FunctionInfo{2, nullptr, "Cmd2" },
|
||||
FunctionInfo{3, nullptr, "Cmd3" },
|
||||
FunctionInfo{4, nullptr, "Cmd4" },
|
||||
FunctionInfo{5, nullptr, "Cmd5" },
|
||||
FunctionInfo{6, nullptr, "Cmd6" },
|
||||
FunctionInfo{7, nullptr, "Cmd7" },
|
||||
FunctionInfo{8, nullptr, "Cmd8" },
|
||||
FunctionInfo{9, nullptr, "Cmd9" },
|
||||
FunctionInfo{10, nullptr, "Cmd10" },
|
||||
FunctionInfo{11, nullptr, "Cmd11" },
|
||||
FunctionInfo{12, nullptr, "Cmd12" },
|
||||
FunctionInfo{13, nullptr, "Cmd13" },
|
||||
FunctionInfo{14, nullptr, "Cmd14" },
|
||||
FunctionInfo{15, nullptr, "Cmd15" },
|
||||
FunctionInfo{16, nullptr, "Cmd16" },
|
||||
FunctionInfo{17, nullptr, "Cmd17" },
|
||||
FunctionInfo{18, nullptr, "Cmd18" },
|
||||
FunctionInfo{19, nullptr, "Cmd19" },
|
||||
FunctionInfo{20, nullptr, "Cmd20" },
|
||||
FunctionInfo{21, nullptr, "Cmd21" },
|
||||
FunctionInfo{22, nullptr, "Cmd22" },
|
||||
FunctionInfo{23, nullptr, "Cmd23" },
|
||||
FunctionInfo{24, nullptr, "Cmd24" },
|
||||
FunctionInfo{25, nullptr, "Cmd25" },
|
||||
FunctionInfo{26, nullptr, "Cmd26" },
|
||||
FunctionInfo{27, nullptr, "Cmd27" },
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, nullptr, "Cmd0" },
|
||||
FunctionInfo{1, nullptr, "Cmd1" },
|
||||
FunctionInfo{2, nullptr, "Cmd2" },
|
||||
FunctionInfo{3, nullptr, "Cmd3" },
|
||||
FunctionInfo{4, nullptr, "Cmd4" },
|
||||
FunctionInfo{5, nullptr, "Cmd5" },
|
||||
FunctionInfo{6, nullptr, "Cmd6" },
|
||||
FunctionInfo{7, nullptr, "Cmd7" },
|
||||
FunctionInfo{8, nullptr, "Cmd8" },
|
||||
FunctionInfo{9, nullptr, "Cmd9" },
|
||||
FunctionInfo{10, nullptr, "Cmd10" },
|
||||
FunctionInfo{11, nullptr, "Cmd11" },
|
||||
FunctionInfo{12, nullptr, "Cmd12" },
|
||||
FunctionInfo{13, nullptr, "Cmd13" },
|
||||
FunctionInfo{14, nullptr, "Cmd14" },
|
||||
FunctionInfo{15, nullptr, "Cmd15" },
|
||||
FunctionInfo{16, nullptr, "Cmd16" },
|
||||
FunctionInfo{17, nullptr, "Cmd17" },
|
||||
FunctionInfo{18, nullptr, "Cmd18" },
|
||||
FunctionInfo{19, nullptr, "Cmd19" },
|
||||
FunctionInfo{20, nullptr, "Cmd20" },
|
||||
FunctionInfo{21, nullptr, "Cmd21" },
|
||||
FunctionInfo{22, nullptr, "Cmd22" },
|
||||
FunctionInfo{23, nullptr, "Cmd23" },
|
||||
FunctionInfo{24, nullptr, "Cmd24" },
|
||||
FunctionInfo{25, nullptr, "Cmd25" },
|
||||
FunctionInfo{26, nullptr, "Cmd26" },
|
||||
FunctionInfo{27, nullptr, "Cmd27" }
|
||||
);
|
||||
};
|
||||
|
||||
class IPrivateServiceCreator final : public ServiceFramework<IPrivateServiceCreator> {
|
||||
public:
|
||||
explicit IPrivateServiceCreator(Core::System& system_)
|
||||
: ServiceFramework{system_, "wlan:p"}
|
||||
{
|
||||
static const FunctionInfo functions[] = {
|
||||
FunctionInfo{0, nullptr, "CreateWirelessCommunicationService" },
|
||||
FunctionInfo{1, nullptr, "CreatePrivateWirelessCommunicationService" },
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, nullptr, "CreateWirelessCommunicationService" },
|
||||
FunctionInfo{1, nullptr, "CreatePrivateWirelessCommunicationService" }
|
||||
);
|
||||
};
|
||||
|
||||
class ISfDriverServiceCreator final : public ServiceFramework<ISfDriverServiceCreator> {
|
||||
public:
|
||||
explicit ISfDriverServiceCreator(Core::System& system_)
|
||||
: ServiceFramework{system_, "wlan:nd"}
|
||||
{
|
||||
static const FunctionInfo functions[] = {
|
||||
FunctionInfo{0, nullptr, "CreateDriverService" },
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
{}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, nullptr, "CreateDriverService" }
|
||||
);
|
||||
};
|
||||
|
||||
void LoopProcess(Core::System& system) {
|
||||
|
||||
Reference in New Issue
Block a user