|
#define | serviceAssumeDomain(_s) |
| Hints the compiler that a service will always contain a domain object. More...
|
|
#define | serviceMacroDetectIsSameType(a, b) __builtin_types_compatible_p(typeof(a), typeof(b)) |
|
#define | serviceMacroDetectIsPointerOrArray(p) (__builtin_classify_type(p) == 5) |
|
#define | serviceMacroDecay(p) (&*__builtin_choose_expr(serviceMacroDetectIsPointerOrArray(p), p, NULL)) |
|
#define | serviceMacroDetectIsPointer(p) serviceMacroDetectIsSameType(p, serviceMacroDecay(p)) |
|
#define | serviceDispatch(_s, _rid, ...) serviceDispatchImpl((_s),(_rid),NULL,0,NULL,0,(SfDispatchParams){ __VA_ARGS__ }) |
|
#define | serviceDispatchIn(_s, _rid, _in, ...) |
|
#define | serviceDispatchOut(_s, _rid, _out, ...) |
|
#define | serviceDispatchInOut(_s, _rid, _in, _out, ...) |
|
|
static bool | serviceIsActive (Service *s) |
| Returns whether a service has been initialized. More...
|
|
static bool | serviceIsOverride (Service *s) |
| Returns whether a service is overriden in the homebrew environment. More...
|
|
static bool | serviceIsDomain (Service *s) |
| Returns whether a service is a domain. More...
|
|
static bool | serviceIsDomainSubservice (Service *s) |
| Returns whether a service is a domain subservice. More...
|
|
static u32 | serviceGetObjectId (Service *s) |
| For a domain/domain subservice, return the associated object ID. More...
|
|
static void | serviceCreate (Service *s, Handle h) |
| Creates a service object from an IPC session handle. More...
|
|
static void | serviceCreateNonDomainSubservice (Service *s, Service *parent, Handle h) |
| Creates a non-domain subservice object from a parent service. More...
|
|
static void | serviceCreateDomainSubservice (Service *s, Service *parent, u32 object_id) |
| Creates a domain subservice object from a parent service. More...
|
|
static void | serviceClose (Service *s) |
| Closes a service. More...
|
|
static Result | serviceClone (Service *s, Service *out_s) |
| Clones a service. More...
|
|
static Result | serviceCloneEx (Service *s, u32 tag, Service *out_s) |
| Clones a service with a session manager tag. More...
|
|
static Result | serviceConvertToDomain (Service *s) |
| Converts a regular service to a domain. More...
|
|
static void | _serviceRequestFormatProcessBuffer (CmifRequestFormat *fmt, u32 attr) |
|
static void | _serviceRequestProcessBuffer (CmifRequest *req, const SfBuffer *buf, u32 attr) |
|
static void * | serviceMakeRequest (Service *s, u32 request_id, u32 context, u32 data_size, bool send_pid, const SfBufferAttrs buffer_attrs, const SfBuffer *buffers, u32 num_objects, const Service *const *objects, u32 num_handles, const Handle *handles) |
|
static void | _serviceResponseGetHandle (CmifResponse *res, SfOutHandleAttr type, Handle *out) |
|
static Result | serviceParseResponse (Service *s, u32 out_size, void **out_data, u32 num_out_objects, Service *out_objects, const SfOutHandleAttrs out_handle_attrs, Handle *out_handles) |
|
static Result | serviceDispatchImpl (Service *s, u32 request_id, const void *in_data, u32 in_data_size, void *out_data, u32 out_data_size, SfDispatchParams disp) |
|