#pragma once #include <3ds/types.h> typedef struct ServiceManagerServiceEntry { const char *name; u32 maxSessions; void (*handler)(void *ctx); bool isGlobalPort; } ServiceManagerServiceEntry; typedef struct ServiceManagerNotificationEntry { u32 id; void (*handler)(u32 id); } ServiceManagerNotificationEntry; typedef struct ServiceManagerContextAllocator { void* (*newSessionContext)(u8 serviceId); void (*freeSessionContext)(void *ctx); } ServiceManagerContextAllocator; Result ServiceManager_Run(const ServiceManagerServiceEntry *services, const ServiceManagerNotificationEntry *notifications, const ServiceManagerContextAllocator *allocator);