GDBusObjectManager
GDBusObjectManager — Base type for D-Bus object managers
|
|
Object Hierarchy
GInterface
╰── GDBusObjectManager
Prerequisites
GDBusObjectManager requires
GObject.
Includes
#include <gio/gio.h>
Functions
g_dbus_object_manager_get_object_path ()
const gchar *
g_dbus_object_manager_get_object_path (GDBusObjectManager *manager);
Gets the object path that manager
is for.
Returns
A string owned by manager
. Do not free.
Since: 2.30
g_dbus_object_manager_get_objects ()
GList *
g_dbus_object_manager_get_objects (GDBusObjectManager *manager);
Gets all GDBusObject objects known to manager
.
Returns
A list of
GDBusObject objects. The returned list should be freed with
g_list_free() after each element has been freed with
g_object_unref().
[transfer full][element-type GDBusObject]
Since: 2.30
g_dbus_object_manager_get_interface ()
GDBusInterface *
g_dbus_object_manager_get_interface (GDBusObjectManager *manager,
const gchar *object_path,
const gchar *interface_name);
Gets the interface proxy for interface_name
at object_path
, if
any.
Returns
A GDBusInterface instance or NULL. Free
with g_object_unref().
[transfer full]
Since: 2.30
Types and Values
GDBusObjectManager
typedef struct _GDBusObjectManager GDBusObjectManager;
GDBusObjectManager is an opaque data structure and can only be accessed
using the following functions.
struct GDBusObjectManagerIface
struct GDBusObjectManagerIface {
GTypeInterface parent_iface;
/* Virtual Functions */
const gchar *(*get_object_path) (GDBusObjectManager *manager);
GList *(*get_objects) (GDBusObjectManager *manager);
GDBusObject *(*get_object) (GDBusObjectManager *manager,
const gchar *object_path);
GDBusInterface *(*get_interface) (GDBusObjectManager *manager,
const gchar *object_path,
const gchar *interface_name);
/* Signals */
void (*object_added) (GDBusObjectManager *manager,
GDBusObject *object);
void (*object_removed) (GDBusObjectManager *manager,
GDBusObject *object);
void (*interface_added) (GDBusObjectManager *manager,
GDBusObject *object,
GDBusInterface *interface_);
void (*interface_removed) (GDBusObjectManager *manager,
GDBusObject *object,
GDBusInterface *interface_);
};
Base type for D-Bus object managers.
Since: 2.30
Signal Details
The “interface-added” signal
void
user_function (GDBusObjectManager *manager,
GDBusObject *object,
GDBusInterface *interface,
gpointer user_data)
Emitted when interface
is added to object
.
This signal exists purely as a convenience to avoid having to
connect signals to all objects managed by manager
.
Flags: Run Last
Since: 2.30
The “interface-removed” signal
void
user_function (GDBusObjectManager *manager,
GDBusObject *object,
GDBusInterface *interface,
gpointer user_data)
Emitted when interface
has been removed from object
.
This signal exists purely as a convenience to avoid having to
connect signals to all objects managed by manager
.
Flags: Run Last
Since: 2.30
The “object-added” signal
void
user_function (GDBusObjectManager *manager,
GDBusObject *object,
gpointer user_data)
Emitted when object
is added to manager
.
Flags: Run Last
Since: 2.30
The “object-removed” signal
void
user_function (GDBusObjectManager *manager,
GDBusObject *object,
gpointer user_data)
Emitted when object
is removed from manager
.
Flags: Run Last
Since: 2.30