void spi_initialize_accessible(DRouteData *data);
void spi_initialize_action(DRouteData *data);
void spi_initialize_application(DRouteData *data);
+void spi_initialize_collection(DRouteData *data);
void spi_initialize_component(DRouteData *data);
void spi_initialize_document(DRouteData *data);
void spi_initialize_editabletext(DRouteData *data);
void spi_initialize_table(DRouteData *data);
void spi_initialize_text(DRouteData *data);
void spi_initialize_value(DRouteData *data);
-void spi_initialize_introspectable(DRouteData *data);
-void spi_dbus_initialize(DRouteData *data);
-
-AtkObject *spi_dbus_get_object(const char *path);
-gchar *spi_dbus_get_path(AtkObject *obj);
-
-DBusMessage *spi_dbus_return_object(DBusMessage *message, AtkObject *obj, int unref);
-dbus_bool_t spi_dbus_return_v_object(DBusMessageIter *iter, AtkObject *obj, int unref);
+void spi_initialize_introspectable(DRouteData *data, DRouteGetDatumFunction verify_object);
/* tree.c */
-void spi_register_tree_object(DBusConnection *bus, const char *path);
+void spi_register_tree_object(DBusConnection *bus, DRouteData *data, const char *path);
dbus_bool_t spi_dbus_append_tree (DBusMessage * message, AtkObject * obj, DRouteData * data);
-void spi_dbus_notify_change(AtkObject *obj, gboolean new, DRouteData *data);
-void spi_dbus_notify_remove(AtkObject *obj, DRouteData *data);
-gboolean spi_dbus_update_cache(DRouteData *data);
-gboolean spi_dbus_object_is_known(AtkObject *obj);
+void
+atk_tree_cache_needs_update(void);
+
+#include "atk-dbus.h"
G_END_DECLS