Functions | |
Eldbus_Signal_Handler * | eldbus_signal_handler_add (Eldbus_Connection *conn, const char *sender, const char *path, const char *interface, const char *member, Eldbus_Signal_Cb cb, const void *cb_data) |
Add a signal handler. More... | |
Eldbus_Signal_Handler * | eldbus_signal_handler_ref (Eldbus_Signal_Handler *handler) |
Increase signal handler reference. More... | |
void | eldbus_signal_handler_unref (Eldbus_Signal_Handler *handler) |
Decrease signal handler reference. More... | |
void | eldbus_signal_handler_del (Eldbus_Signal_Handler *handler) |
Decrease signal handler reference like eldbus_signal_handler_unref() but if reference > 0 this signal handler will stop listening to signals. More... | |
Eina_Bool | eldbus_signal_handler_match_extra_set (Eldbus_Signal_Handler *sh,...) EINA_SENTINEL |
Add extra argument in match of signal handler to obtain specifics signals. More... | |
Eina_Bool | eldbus_signal_handler_match_extra_vset (Eldbus_Signal_Handler *sh, va_list ap) |
Add extra argument in match of signal handler to obtain specifics signals. More... | |
void | eldbus_signal_handler_free_cb_add (Eldbus_Signal_Handler *handler, Eldbus_Free_Cb cb, const void *data) |
Add a callback function to be called when signal handler will be freed. More... | |
void | eldbus_signal_handler_free_cb_del (Eldbus_Signal_Handler *handler, Eldbus_Free_Cb cb, const void *data) |
Remove callback registered in eldbus_signal_handler_free_cb_add(). More... | |
const char * | eldbus_signal_handler_sender_get (const Eldbus_Signal_Handler *handler) |
const char * | eldbus_signal_handler_path_get (const Eldbus_Signal_Handler *handler) |
const char * | eldbus_signal_handler_interface_get (const Eldbus_Signal_Handler *handler) |
const char * | eldbus_signal_handler_member_get (const Eldbus_Signal_Handler *handler) |
const char * | eldbus_signal_handler_match_get (const Eldbus_Signal_Handler *handler) |
Eldbus_Connection * | eldbus_signal_handler_connection_get (const Eldbus_Signal_Handler *handler) |
Eldbus_Signal_Handler * eldbus_signal_handler_add | ( | Eldbus_Connection * | conn, |
const char * | sender, | ||
const char * | path, | ||
const char * | interface, | ||
const char * | member, | ||
Eldbus_Signal_Cb | cb, | ||
const void * | cb_data | ||
) |
Add a signal handler.
conn | connection where the signal is emitted |
sender | bus name or unique id of where the signal is emitted |
path | path of remote object |
interface | that signal belongs |
member | name of the signal |
cb | callback that will be called when this signal is received |
cb_data | data that will be passed to callback |
References EINA_SAFETY_ON_NULL_RETURN_VAL, eldbus_connection_free_cb_add(), and eldbus_signal_handler_free_cb_add().
Eldbus_Signal_Handler * eldbus_signal_handler_ref | ( | Eldbus_Signal_Handler * | handler | ) |
Increase signal handler reference.
handler | signal handler |
handler
References DBG, and eina_strbuf_string_get().
void eldbus_signal_handler_unref | ( | Eldbus_Signal_Handler * | handler | ) |
Decrease signal handler reference.
If reference == 0 signal handler will be freed.
handler | signal handler |
References DBG, and eina_strbuf_string_get().
Referenced by eldbus_proxy_event_callback_del(), and eldbus_signal_handler_del().
void eldbus_signal_handler_del | ( | Eldbus_Signal_Handler * | handler | ) |
Decrease signal handler reference like eldbus_signal_handler_unref() but if reference > 0 this signal handler will stop listening to signals.
In other words it will be canceled but memory will not be freed.
handler | signal handler to delete |
References eldbus_signal_handler_unref().
Referenced by eldbus_object_event_callback_del().
Eina_Bool eldbus_signal_handler_match_extra_set | ( | Eldbus_Signal_Handler * | sh, |
... | |||
) |
Add extra argument in match of signal handler to obtain specifics signals.
Example: eldbus_signal_handler_match_extra_set(sh, "arg0", "org.bansheeproject.Banshee", "arg1", "", NULL); With this extra arguments this signal handler callback only will be called when Banshee is started.
sh | signal handler |
... | variadic of key and value and must be ended with a NULL |
References eldbus_signal_handler_match_extra_vset().
Referenced by eldbus_object_event_callback_add(), and eldbus_proxy_properties_changed_callback_add().
Eina_Bool eldbus_signal_handler_match_extra_vset | ( | Eldbus_Signal_Handler * | sh, |
va_list | ap | ||
) |
Add extra argument in match of signal handler to obtain specifics signals.
Example: eldbus_signal_handler_match_extra_set(sh, "arg0", "org.bansheeproject.Banshee", "arg1", "", NULL); With this extra arguments this signal handler callback only will be called when Banshee is started.
sh | signal handler |
ap | va_list with the keys and values, must be ended with a NULL |
References EINA_FALSE, EINA_INLIST_GET, eina_inlist_sorted_state_insert(), EINA_SAFETY_ON_NULL_GOTO, eina_strbuf_string_get(), eina_stringshare_add(), EINA_TRUE, and ERR.
Referenced by eldbus_signal_handler_match_extra_set().
void eldbus_signal_handler_free_cb_add | ( | Eldbus_Signal_Handler * | handler, |
Eldbus_Free_Cb | cb, | ||
const void * | data | ||
) |
Add a callback function to be called when signal handler will be freed.
handler | signal handler |
cb | callback that will be called when this signal handler is freed |
data | data that will be passed to callback |
References EINA_SAFETY_ON_NULL_RETURN.
Referenced by eldbus_object_signal_handler_add(), eldbus_proxy_signal_handler_add(), and eldbus_signal_handler_add().
void eldbus_signal_handler_free_cb_del | ( | Eldbus_Signal_Handler * | handler, |
Eldbus_Free_Cb | cb, | ||
const void * | data | ||
) |
Remove callback registered in eldbus_signal_handler_free_cb_add().
handler | signal handler |
cb | registered callback to remove |
data | data that will be passed to callback |
References EINA_SAFETY_ON_NULL_RETURN.