summaryrefslogtreecommitdiff
path: root/dbus/dbus-connection.h
diff options
context:
space:
mode:
Diffstat (limited to 'dbus/dbus-connection.h')
-rw-r--r--dbus/dbus-connection.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/dbus/dbus-connection.h b/dbus/dbus-connection.h
index ef106524..7204c8ed 100644
--- a/dbus/dbus-connection.h
+++ b/dbus/dbus-connection.h
@@ -198,6 +198,54 @@ void dbus_connection_send_preallocated (DBusConnection
dbus_uint32_t *client_serial);
+/* Object tree functionality */
+
+typedef struct DBusObjectTreeVTable DBusObjectTreeVTable;
+
+typedef void (* DBusObjectTreeUnregisterFunction) (DBusConnection *connection,
+ const char **path,
+ void *user_data);
+typedef DBusHandlerResult (* DBusObjectTreeMessageFunction) (DBusConnection *connection,
+ DBusMessage *message,
+ void *user_data);
+typedef dbus_bool_t (* DBusObjectTreeSubdirsFunction) (DBusConnection *connection,
+ const char **path,
+ char ***subdirs,
+ int *n_subdirs,
+ void *user_data);
+typedef dbus_bool_t (* DBusObjectTreeObjectsFunction) (DBusConnection *connection,
+ const char **path,
+ DBusObjectID **object_ids,
+ int *n_object_ids,
+ void *user_data);
+typedef dbus_bool_t (* DBusObjectTreeMethodsFunction) (DBusConnection *connection,
+ const char **path,
+ DBusObjectID **object_ids,
+ int *n_object_ids,
+ void *user_data);
+
+struct DBusObjectTreeVTable
+{
+ DBusObjectTreeUnregisterFunction unregister_function;
+ DBusObjectTreeMessageFunction message_function;
+ DBusObjectTreeSubdirsFunction subdirs_function;
+ DBusObjectTreeObjectsFunction objects_function;
+ DBusObjectTreeMethodsFunction methods_function;
+
+ void (* dbus_internal_pad1) (void *);
+ void (* dbus_internal_pad2) (void *);
+ void (* dbus_internal_pad3) (void *);
+ void (* dbus_internal_pad4) (void *);
+};
+
+dbus_bool_t dbus_connection_register_object_tree (DBusConnection *connection,
+ const char **path,
+ const DBusObjectTreeVTable *vtable,
+ void *user_data);
+void dbus_connection_unregister_object_tree (DBusConnection *connection,
+ const char **path);
+
+
DBUS_END_DECLS;
#endif /* DBUS_CONNECTION_H */