1#ifndef CNSDK_LEIA_CORE_EVENT_CENTER_H
2#define CNSDK_LEIA_CORE_EVENT_CENTER_H
30#if defined(LEIA_DOXYGEN)
#define LEIASDK_API
Definition api.h:9
#define LEIA_NODISCARD
Definition defines.h:86
#define END_CAPI_DECL
Definition defines.h:74
#define NONOWNING(ptr)
Definition defines.h:110
#define BEGIN_CAPI_DECL
Definition defines.h:73
void(* leia_event_listener_callback)(void *userData, struct leia_event const *)
Definition eventCenter.types.h:50
leia_component_id
Definition eventCenter.types.h:25
leia_event_type
Definition eventCenter.types.h:13
LEIASDK_API void const * leia_component_event_get_payload(struct leia_event_component const *component)
Get payload.
LEIASDK_API enum leia_component_id leia_component_event_get_id(struct leia_event_component const *component)
Identify the component that produced this event.
LEIASDK_API struct leia_event_component const * leia_event_get_component(struct leia_event const *event)
Get component event.
LEIASDK_API struct leia_event_error const * leia_event_get_error(struct leia_event const *event)
Get error event.
LEIASDK_API enum leia_event_type leia_event_get_type(struct leia_event const *event)
Get event type.
LEIASDK_API struct leia_event_log const * leia_event_get_log(struct leia_event const *event)
Get log event.
LEIASDK_API int32_t leia_component_event_get_code(struct leia_event_component const *component)
Get the component-specific event code (See for example leia_core_event_code)
LEIA_NODISCARD LEIASDK_API struct leia_event_listener * leia_event_listener_alloc(struct leia_core_library *)
LEIASDK_API void leia_event_listener_free(struct leia_event_listener *)
LEIASDK_API void leia_event_listener_set_callback(struct leia_event_listener *, leia_event_listener_callback callback, void *userData)
callback must be thread-safe.
LEIASDK_API void leia_event_center_remove_listener(NONOWNING(struct leia_event_listener *) listener)
Remove event listener.
LEIASDK_API void leia_event_center_add_listener(NONOWNING(struct leia_event_listener *) listener)
Add event listener.
Core library.
Definition library.h:17
Event center.
Definition eventCenter.h:36
Component-specific event.
Definition eventCenter.h:46
Definition eventCenter.types.h:33
Definition eventCenter.types.h:20
Event.
Definition eventCenter.h:41