From 39d0023ebcdbc72a6e7b48de657b594e9de97358 Mon Sep 17 00:00:00 2001 From: Johan Dahlin Date: Mon, 31 May 2010 17:41:45 -0300 Subject: [girepository] Split out GIBaseInfo Split out GIBaseInfo to a separate source file. Move out definitions to gibaseinfo.h/gitypelib.h/gitypes.h and girepository-private.h Install gibaseinfo.h/gitypelib.h and gitypes.h as well, but require users to include girepository.h --- girepository/gibaseinfo.h | 88 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 girepository/gibaseinfo.h (limited to 'girepository/gibaseinfo.h') diff --git a/girepository/gibaseinfo.h b/girepository/gibaseinfo.h new file mode 100644 index 00000000..f4bd731c --- /dev/null +++ b/girepository/gibaseinfo.h @@ -0,0 +1,88 @@ +/* GObject introspection: GIBaseInfo + * + * Copyright (C) 2005 Matthias Clasen + * Copyright (C) 2008,2009 Red Hat, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#ifndef __GIBASEINFO_H__ +#define __GIBASEINFO_H__ + +#if !defined (__GIREPOSITORY_H_INSIDE__) && !defined (GI_COMPILATION) +#error "Only can be included directly." +#endif + +#include +#include +#include + +G_BEGIN_DECLS + +struct _GIBaseInfoStub { + /* */ + gint32 dummy1; + gint32 dummy2; + gpointer dummy3; + gpointer dummy4; + gpointer dummy5; + guint32 dummy6; + guint32 dummy7; + gpointer padding[4]; +}; + +/* GIBaseInfo */ + +/** + * GIAttributeIter: + * + * An opaque structure used to iterate over attributes + * in a #GIBaseInfo struct. + */ +typedef struct { + /* */ + gpointer data; + gpointer data2; + gpointer data3; + gpointer data4; +} GIAttributeIter; + +GIBaseInfo * g_base_info_ref (GIBaseInfo *info); +void g_base_info_unref (GIBaseInfo *info); +GIInfoType g_base_info_get_type (GIBaseInfo *info); +const gchar * g_base_info_get_name (GIBaseInfo *info); +const gchar * g_base_info_get_namespace (GIBaseInfo *info); +gboolean g_base_info_is_deprecated (GIBaseInfo *info); +const gchar * g_base_info_get_attribute (GIBaseInfo *info, + const gchar *name); +gboolean g_base_info_iterate_attributes (GIBaseInfo *info, + GIAttributeIter *iterator, + char **name, + char **value); +GIBaseInfo * g_base_info_get_container (GIBaseInfo *info); +GTypelib * g_base_info_get_typelib (GIBaseInfo *info); +gboolean g_base_info_equal (GIBaseInfo *info1, + GIBaseInfo *info2); +GIBaseInfo * g_info_new (GIInfoType type, + GIBaseInfo *container, + GTypelib *typelib, + guint32 offset); + + +G_END_DECLS + +#endif /* __GIBASEINFO_H__ */ + -- cgit v1.2.1