-void spi_initialize_accessible (DRoutePath *path);
-void spi_initialize_action (DRoutePath *path);
-void spi_initialize_application (DRoutePath *path);
-void spi_initialize_collection (DRoutePath *path);
-void spi_initialize_component (DRoutePath *path);
-void spi_initialize_document (DRoutePath *path);
-void spi_initialize_editabletext (DRoutePath *path);
-void spi_initialize_hyperlink (DRoutePath *path);
-void spi_initialize_hypertext (DRoutePath *path);
-void spi_initialize_image (DRoutePath *path);
-void spi_initialize_selection (DRoutePath *path);
-void spi_initialize_table (DRoutePath *path);
-void spi_initialize_text (DRoutePath *path);
-void spi_initialize_value (DRoutePath *path);
-
-void spi_initialize_tree (DRoutePath *path);
+struct _SpiBridge
+{
+ GObject parent;
+
+ AtkObject *root;
+
+ DBusConnection *bus;
+ DRouteContext *droute;
+ GMainContext *main_context;
+ DBusServer *server;
+ GList *direct_connections;
+
+/*
+ SpiRegister *reg;
+ SpiCache *cache;
+ SpiLeasing *leasing;
+*/
+ gchar *desktop_name;
+ gchar *desktop_path;
+char *app_bus_addr;
+ GList *events;
+ gboolean events_initialized;
+};
+
+extern SpiBridge *spi_global_app_data;
+
+void spi_atk_add_client (const char *bus_name);
+void spi_atk_remove_client (const char *bus_name);