![]() |
![]() |
![]() |
libgdbus Reference Manual | ![]() |
---|---|---|---|---|
void (*GDBusDestroyFunction) (void *user_data); void (*GDBusWatchFunction) (void *user_data); gboolean (*GDBusSignalFunction) (DBusConnection *connection, DBusMessage *message, void *user_data); DBusMessage* (*GDBusMethodFunction) (DBusConnection *connection, DBusMessage *message, void *user_data); dbus_bool_t (*GDBusPropertyGetFunction) (DBusConnection *connection, DBusMessageIter *iter, void *user_data); dbus_bool_t (*GDBusPropertySetFunction) (DBusConnection *connection, DBusMessageIter *iter, void *user_data); enum GDBusMethodFlags; enum GDBusSignalFlags; enum GDBusPropertyFlags; GDBusMethodTable; GDBusSignalTable; GDBusPropertyTable; void g_dbus_setup_connection (DBusConnection *connection, GMainContext *context); void g_dbus_cleanup_connection (DBusConnection *connection); DBusConnection* g_dbus_setup_bus (DBusBusType type, const char *name, DBusError *error); DBusConnection* g_dbus_setup_address (const char *address, DBusError *error); gboolean g_dbus_request_name (DBusConnection *connection, const char *name, DBusError *error); gboolean g_dbus_set_disconnect_function (DBusConnection *connection, GDBusWatchFunction function, void *user_data, GDBusDestroyFunction destroy); gboolean g_dbus_register_interface (DBusConnection *connection, const char *path, const char *name, GDBusMethodTable *methods, GDBusSignalTable *signals, GDBusPropertyTable *properties, void *user_data, GDBusDestroyFunction destroy); gboolean g_dbus_unregister_interface (DBusConnection *connection, const char *path, const char *name); DBusMessage* g_dbus_create_error (DBusMessage *message, const char *name, const char *format, ...); DBusMessage* g_dbus_create_error_valist (DBusMessage *message, const char *name, const char *format, va_list args); DBusMessage* g_dbus_create_reply (DBusMessage *message, int type, ...); DBusMessage* g_dbus_create_reply_valist (DBusMessage *message, int type, va_list args); gboolean g_dbus_send_message (DBusConnection *connection, DBusMessage *message); gboolean g_dbus_send_error (DBusConnection *connection, DBusMessage *message, const char *name, const char *format, ...); gboolean g_dbus_send_reply (DBusConnection *connection, DBusMessage *message, int type, ...); gboolean g_dbus_send_reply_valist (DBusConnection *connection, DBusMessage *message, int type, va_list args); gboolean g_dbus_emit_signal (DBusConnection *connection, const char *path, const char *interface, const char *name, int type, ...); gboolean g_dbus_emit_signal_valist (DBusConnection *connection, const char *path, const char *interface, const char *name, int type, va_list args); guint g_dbus_add_service_watch (DBusConnection *connection, const char *name, GDBusWatchFunction connect, GDBusWatchFunction disconnect, void *user_data, GDBusDestroyFunction destroy); guint g_dbus_add_disconnect_watch (DBusConnection *connection, const char *name, GDBusWatchFunction function, void *user_data, GDBusDestroyFunction destroy); guint g_dbus_add_signal_watch (DBusConnection *connection, const char *rule, GDBusSignalFunction function, void *user_data, GDBusDestroyFunction destroy); gboolean g_dbus_remove_watch (DBusConnection *connection, guint tag); void g_dbus_remove_all_watches (DBusConnection *connection);
void (*GDBusDestroyFunction) (void *user_data);
Destroy function
|
user data to pass to the function |
void (*GDBusWatchFunction) (void *user_data);
Watch function
|
user data to pass to the function |
gboolean (*GDBusSignalFunction) (DBusConnection *connection, DBusMessage *message, void *user_data);
Signal function
|
a DBusConnection |
|
a DBusMessage |
|
user data to pass to the function |
Returns : |
FALSE to remove this watch |
DBusMessage* (*GDBusMethodFunction) (DBusConnection *connection, DBusMessage *message, void *user_data);
Method function
|
a DBusConnection |
|
a DBusMessage |
|
user data to pass to the function |
Returns : |
DBusMessage reply |
dbus_bool_t (*GDBusPropertyGetFunction) (DBusConnection *connection, DBusMessageIter *iter, void *user_data);
Property get function
|
a DBusConnection |
|
a DBusMessageIter |
|
user data to pass to the function |
Returns : |
TRUE on success |
dbus_bool_t (*GDBusPropertySetFunction) (DBusConnection *connection, DBusMessageIter *iter, void *user_data);
Property set function
|
a DBusConnection |
|
a DBusMessageIter |
|
user data to pass to the function |
Returns : |
TRUE on success |
typedef enum { G_DBUS_METHOD_FLAG_DEPRECATED = (1 << 0), G_DBUS_METHOD_FLAG_NOREPLY = (1 << 1), G_DBUS_METHOD_FLAG_ASYNC = (1 << 2), } GDBusMethodFlags;
Method flags
typedef enum { G_DBUS_SIGNAL_FLAG_DEPRECATED = (1 << 0), } GDBusSignalFlags;
Signal flags
typedef enum { G_DBUS_PROPERTY_FLAG_DEPRECATED = (1 << 0), } GDBusPropertyFlags;
Property flags
typedef struct { const char *name; const char *signature; const char *reply; GDBusMethodFunction function; GDBusMethodFlags flags; } GDBusMethodTable;
Method table
const char * |
method name |
const char * |
method signature |
const char * |
reply signature |
GDBusMethodFunction |
method function |
GDBusMethodFlags |
method flags |
typedef struct { const char *name; const char *signature; GDBusSignalFlags flags; } GDBusSignalTable;
Signal table
const char * |
signal name |
const char * |
signal signature |
GDBusSignalFlags |
signal flags |
typedef struct { const char *name; const char *type; GDBusPropertyGetFunction get; GDBusPropertyGetFunction set; GDBusPropertyFlags flags; } GDBusPropertyTable;
Property table
const char * |
property name |
const char * |
property value type |
property get function | |
property set function | |
GDBusPropertyFlags |
property flags |
void g_dbus_setup_connection (DBusConnection *connection, GMainContext *context);
Setup connection with main context
Sets the watch and timeout functions of a DBusConnection to integrate the connection with the GLib main loop. Pass in NULL for the GMainContext unless you're doing something specialized.
|
a DBusConnection |
|
a GMainContext or NULL for default context |
void g_dbus_cleanup_connection (DBusConnection *connection);
Cleanup the setup of DBusConnection and free the allocated memory.
|
a DBusConnection |
DBusConnection* g_dbus_setup_bus (DBusBusType type, const char *name, DBusError *error);
Connect to bus and setup connection
Returns a connection to the given bus and requests a well known name for it. Sets the watch and timeout functions for it.
|
a DBusBusType |
|
well known name |
|
a DBusError |
Returns : |
newly setup DBusConnection |
DBusConnection* g_dbus_setup_address (const char *address, DBusError *error);
Connect to bus and setup connection
Returns a connection to the bus specified via the given address and sets the watch and timeout functions for it.
|
bus address |
|
a DBusError |
Returns : |
newly setup DBusConnection |
gboolean g_dbus_request_name (DBusConnection *connection, const char *name, DBusError *error);
Requests a well known name for connection.
|
a DBusConnection |
|
well known name |
|
a DBusError |
Returns : |
TRUE on success |
gboolean g_dbus_set_disconnect_function (DBusConnection *connection, GDBusWatchFunction function, void *user_data, GDBusDestroyFunction destroy);
Set a callback function that will be called when the D-Bus message bus exits.
|
a DBusConnection |
|
a GDBusWatchFunction |
|
user data to pass to the function |
|
a GDBusDestroyFunction |
Returns : |
TRUE on success |
gboolean g_dbus_register_interface (DBusConnection *connection, const char *path, const char *name, GDBusMethodTable *methods, GDBusSignalTable *signals, GDBusPropertyTable *properties, void *user_data, GDBusDestroyFunction destroy);
Registers an interface for the given path in the object hierarchy with the given methods, signals and/or properties.
|
the connection |
|
object path |
|
interface name |
|
method table |
|
signal table |
|
property table |
|
user data to assign to interface |
|
function called to destroy user_data |
Returns : |
TRUE on success |
gboolean g_dbus_unregister_interface (DBusConnection *connection, const char *path, const char *name);
Unregister the given interface for the given path in the object hierarchy.
|
the connection |
|
object path |
|
interface name |
Returns : |
TRUE on success |
DBusMessage* g_dbus_create_error (DBusMessage *message, const char *name, const char *format, ...);
Create error reply for the given message.
|
the originating message |
|
the error name |
|
the error description |
|
list of parameters |
Returns : |
reply message on success |
DBusMessage* g_dbus_create_error_valist (DBusMessage *message, const char *name, const char *format, va_list args);
Create error reply for the given message.
|
the originating message |
|
the error name |
|
the error description |
|
argument list |
Returns : |
reply message on success |
DBusMessage* g_dbus_create_reply (DBusMessage *message, int type, ...);
Create reply for the given message.
|
the originating message |
|
first argument type |
|
list of parameters |
Returns : |
reply message on success |
DBusMessage* g_dbus_create_reply_valist (DBusMessage *message, int type, va_list args);
Create reply for the given message.
|
the originating message |
|
first argument type |
|
argument list |
Returns : |
reply message on success |
gboolean g_dbus_send_message (DBusConnection *connection, DBusMessage *message);
Send message via the given D-Bus connection.
The reference count for the message will be decremented by this function.
|
the connection |
|
the message to send |
Returns : |
TRUE on success |
gboolean g_dbus_send_error (DBusConnection *connection, DBusMessage *message, const char *name, const char *format, ...);
Send error reply for the given message and via the given D-Bus connection.
|
the connection |
|
the originating message |
|
the error name |
|
the error description |
|
list of parameters |
Returns : |
TRUE on success |
gboolean g_dbus_send_reply (DBusConnection *connection, DBusMessage *message, int type, ...);
Send reply for the given message and via the given D-Bus connection.
|
the connection |
|
the originating message |
|
first argument type |
|
list of parameters |
Returns : |
TRUE on success |
gboolean g_dbus_send_reply_valist (DBusConnection *connection, DBusMessage *message, int type, va_list args);
Send reply for the given message and via the given D-Bus connection.
|
the connection |
|
the originating message |
|
first argument type |
|
argument list |
Returns : |
TRUE on success |
gboolean g_dbus_emit_signal (DBusConnection *connection, const char *path, const char *interface, const char *name, int type, ...);
Emit a signal for the given path and interface with the given signal name.
The signal signature will be check against the registered signal table.
|
the connection |
|
object path |
|
interface name |
|
signal name |
|
first argument type |
|
list of parameters |
Returns : |
TRUE on success |
gboolean g_dbus_emit_signal_valist (DBusConnection *connection, const char *path, const char *interface, const char *name, int type, va_list args);
Emit a signal for the given path and interface with the given signal name.
The signal signature will be check against the registered signal table.
|
the connection |
|
object path |
|
interface name |
|
signal name |
|
first argument type |
|
argument list |
Returns : |
TRUE on success |
guint g_dbus_add_service_watch (DBusConnection *connection, const char *name, GDBusWatchFunction connect, GDBusWatchFunction disconnect, void *user_data, GDBusDestroyFunction destroy);
Add new watch to listen for connects and/or disconnects of a client for the given connection.
|
the connection |
|
unique or well known name |
|
function called on name connect |
|
function called on name disconnect |
|
user data to pass to the function |
|
function called to destroy user_data |
Returns : |
identifier of the watch |
guint g_dbus_add_disconnect_watch (DBusConnection *connection, const char *name, GDBusWatchFunction function, void *user_data, GDBusDestroyFunction destroy);
Add new watch to listen for disconnect of a client for the given connection.
After the callback has been called, this watch will be automatically removed.
|
the connection |
|
unique or well known name |
|
function called on name disconnect |
|
user data to pass to the function |
|
function called to destroy user_data |
Returns : |
identifier of the watch |
guint g_dbus_add_signal_watch (DBusConnection *connection, const char *rule, GDBusSignalFunction function, void *user_data, GDBusDestroyFunction destroy);
Add new watch to listen for specific signals of a client for the given connection.
If the callback returns FALSE this watch will be automatically removed.
|
the connection |
|
matching rule for this signal |
|
function called when signal arrives |
|
user data to pass to the function |
|
function called to destroy user_data |
Returns : |
identifier of the watch |
gboolean g_dbus_remove_watch (DBusConnection *connection, guint tag);
Removes the watch for the given identifier.
|
the connection |
|
watch identifier |
Returns : |
TRUE on success |