source: trunk/third/glib2/gobject/gvaluearray.h @ 18159

Revision 18159, 2.4 KB checked in by ghudson, 22 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r18158, which included commits to RCS files with non-trunk default branches.
Line 
1/* GObject - GLib Type, Object, Parameter and Signal Library
2 * Copyright (C) 2001 Red Hat, Inc.
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General
15 * Public License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
17 * Boston, MA 02111-1307, USA.
18 *
19 * gvaluearray.h: GLib array type holding GValues
20 */
21#if !defined (__GLIB_GOBJECT_H_INSIDE__) && !defined (GOBJECT_COMPILATION)
22#error "Only <glib-object.h> can be included directly."
23#endif
24
25#ifndef __G_VALUE_ARRAY_H__
26#define __G_VALUE_ARRAY_H__
27
28#include        <gobject/gvalue.h>
29
30
31#ifdef __cplusplus
32extern "C" {
33#endif /* __cplusplus */
34
35
36/* --- typedefs & structs --- */
37typedef struct _GValueArray GValueArray;
38struct _GValueArray
39{
40  guint   n_values;
41  GValue *values;
42
43  /*< private >*/
44  guint   n_prealloced;
45};
46
47
48/* --- prototypes --- */
49GValue*         g_value_array_get_nth        (GValueArray       *value_array,
50                                              guint              index_);
51GValueArray*    g_value_array_new            (guint              n_prealloced);
52void            g_value_array_free           (GValueArray       *value_array);
53GValueArray*    g_value_array_copy           (const GValueArray *value_array);
54GValueArray*    g_value_array_prepend        (GValueArray       *value_array,
55                                              const GValue      *value);
56GValueArray*    g_value_array_append         (GValueArray       *value_array,
57                                              const GValue      *value);
58GValueArray*    g_value_array_insert         (GValueArray       *value_array,
59                                              guint              index_,
60                                              const GValue      *value);
61GValueArray*    g_value_array_remove         (GValueArray       *value_array,
62                                              guint              index_);
63GValueArray*    g_value_array_sort           (GValueArray       *value_array,
64                                              GCompareFunc       compare_func);
65GValueArray*    g_value_array_sort_with_data (GValueArray       *value_array,
66                                              GCompareDataFunc   compare_func,
67                                              gpointer           user_data);
68
69
70
71#ifdef __cplusplus
72}
73#endif /* __cplusplus */
74
75#endif /* __G_VALUE_ARRAY_H__ */
Note: See TracBrowser for help on using the repository browser.