2 * AT-SPI - Assistive Technology Service Provider Interface
3 * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
5 * Copyright 2008 Novell, Inc.
6 * Copyright 2008, 2009 Codethink Ltd.
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version.
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Library General Public License for more details.
18 * You should have received a copy of the GNU Library General Public
19 * License along with this library; if not, write to the
20 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21 * Boston, MA 02111-1307, USA.
24 #ifndef ACCESSIBLE_REGISTER_H
25 #define ACCESSIBLE_REGISTER_H
28 #include <glib-object.h>
30 typedef struct _SpiRegister SpiRegister;
31 typedef struct _SpiRegisterClass SpiRegisterClass;
35 #define SPI_REGISTER_TYPE (spi_register_get_type ())
36 #define SPI_REGISTER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SPI_REGISTER_TYPE, SpiRegister))
37 #define SPI_REGISTER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SPI_REGISTER_TYPE, SpiRegisterClass))
38 #define SPI_IS_REGISTER(o) (G_TYPE_CHECK__INSTANCE_TYPE ((o), SPI_REGISTER_TYPE))
39 #define SPI_IS_REGISTER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SPI_REGISTER_TYPE))
46 guint reference_counter;
49 struct _SpiRegisterClass
51 GObjectClass parent_class;
54 GType spi_register_get_type (void);
56 extern SpiRegister *spi_global_register;
58 /*---------------------------------------------------------------------------*/
61 spi_register_path_to_object (SpiRegister * reg, const char *path);
64 spi_global_register_path_to_object (const char * path);
67 spi_register_object_to_path (SpiRegister * reg, GObject * gobj);
70 spi_register_object_to_ref (GObject * gobj);
73 spi_register_root_object_path ();
75 /*---------------------------------------------------------------------------*/
77 #endif /* ACCESSIBLE_REGISTER_H */