d0cf22f996c621894f5e257dc989ff360db7b663
[python-purple] / glib.pxd
1 #
2 #  Copyright (c) 2008 INdT - Instituto Nokia de Tecnologia
3 #
4 #  This file is part of python-purple.
5 #
6 #  python-purple is free software: you can redistribute it and/or modify
7 #  it under the terms of the GNU General Public License as published by
8 #  the Free Software Foundation, either version 3 of the License, or
9 #  (at your option) any later version.
10 #
11 #  python-purple is distributed in the hope that it will be useful,
12 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 #  GNU General Public License for more details.
15 #
16 #  You should have received a copy of the GNU General Public License
17 #  along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 #
19
20 cdef extern from "glib.h":
21     ctypedef void *gpointer
22     ctypedef void *gconstpointer
23     ctypedef int gint
24     ctypedef unsigned int guint
25     ctypedef gint gboolean
26     ctypedef gboolean (*GSourceFunc) (gpointer data)
27
28     # GHashTable is an opaque data structure
29     ctypedef struct GHashTable:
30         pass
31
32     struct _GSList:
33         gpointer data
34         _GSList *next
35     ctypedef _GSList GSList
36
37     struct _GList:
38         gpointer data
39         _GList *next
40         _GList *prev
41     ctypedef _GList GList
42
43     ctypedef guint GHashFunc (gconstpointer)
44     ctypedef gboolean GEqualFunc (gconstpointer, gconstpointer)
45
46     gboolean g_str_equal (gconstpointer, gconstpointer)
47     guint g_str_hash (gconstpointer)
48
49     GHashTable *g_hash_table_new (GHashFunc, GEqualFunc)
50     void g_hash_table_insert (GHashTable*, gpointer, gpointer)
51
52     guint g_timeout_add(guint interval, GSourceFunc function, gpointer data)
53     guint g_timeout_add_seconds(guint interval, GSourceFunc function, gpointer data)
54
55     gboolean g_source_remove(guint tag)