gvaluetypes.h

Go to the documentation of this file.
00001 /* GObject - GLib Type, Object, Parameter and Signal Library
00002  * Copyright (C) 1997-1999, 2000-2001 Tim Janik and Red Hat, Inc.
00003  * Portions copyright (c) 2006 Nokia Corporation.  All rights reserved.
00004  *
00005  * This library is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU Lesser General Public
00007  * License as published by the Free Software Foundation; either
00008  * version 2 of the License, or (at your option) any later version.
00009  *
00010  * This library is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Lesser General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU Lesser General
00016  * Public License along with this library; if not, write to the
00017  * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
00018  * Boston, MA 02111-1307, USA.
00019  *
00020  * gvaluetypes.h: GLib default values
00021  */
00022 #if !defined (__GLIB_GOBJECT_H_INSIDE__) && !defined (GOBJECT_COMPILATION)
00023 #error "Only <glib-object.h> can be included directly."
00024 #endif
00025 
00026 #ifndef __G_VALUETYPES_H__
00027 #define __G_VALUETYPES_H__
00028 
00029 #include <_ansi.h>
00030 #include        <gobject/gvalue.h>
00031 
00032 G_BEGIN_DECLS
00033 
00034 /* --- type macros --- */
00035 #define G_VALUE_HOLDS_CHAR(value)        (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_CHAR))
00036 #define G_VALUE_HOLDS_UCHAR(value)       (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_UCHAR))
00037 #define G_VALUE_HOLDS_BOOLEAN(value)     (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_BOOLEAN))
00038 #define G_VALUE_HOLDS_INT(value)         (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_INT))
00039 #define G_VALUE_HOLDS_UINT(value)        (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_UINT))
00040 #define G_VALUE_HOLDS_LONG(value)        (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_LONG))
00041 #define G_VALUE_HOLDS_ULONG(value)       (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_ULONG))
00042 #define G_VALUE_HOLDS_INT64(value)       (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_INT64))
00043 #define G_VALUE_HOLDS_UINT64(value)      (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_UINT64))
00044 #define G_VALUE_HOLDS_FLOAT(value)       (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_FLOAT))
00045 #define G_VALUE_HOLDS_DOUBLE(value)      (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_DOUBLE))
00046 #define G_VALUE_HOLDS_STRING(value)      (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_STRING))
00047 #define G_VALUE_HOLDS_POINTER(value)     (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_POINTER))
00048 #define G_TYPE_GTYPE                     (g_gtype_get_type())
00049 #define G_VALUE_HOLDS_GTYPE(value)       (G_TYPE_CHECK_VALUE_TYPE ((value), G_TYPE_GTYPE))
00050 
00051 
00052 /* --- prototypes --- */
00053 IMPORT_C void                 g_value_set_char          (GValue       *value,
00054                                                  gchar         v_char);
00055 IMPORT_C gchar                g_value_get_char          (const GValue *value);
00056 IMPORT_C void                 g_value_set_uchar         (GValue       *value,
00057                                                  guchar        v_uchar);
00058 IMPORT_C guchar               g_value_get_uchar         (const GValue *value);
00059 IMPORT_C void                 g_value_set_boolean       (GValue       *value,
00060                                                  gboolean      v_boolean);
00061 IMPORT_C gboolean             g_value_get_boolean       (const GValue *value);
00062 IMPORT_C void                 g_value_set_int           (GValue       *value,
00063                                                  gint          v_int);
00064 IMPORT_C gint                 g_value_get_int           (const GValue *value);
00065 IMPORT_C void                 g_value_set_uint          (GValue       *value,
00066                                                  guint         v_uint);
00067 IMPORT_C guint                g_value_get_uint          (const GValue *value);
00068 IMPORT_C void                 g_value_set_long          (GValue       *value,
00069                                                  glong         v_long);
00070 IMPORT_C glong                g_value_get_long          (const GValue *value);
00071 IMPORT_C void                 g_value_set_ulong         (GValue       *value,
00072                                                  gulong        v_ulong);
00073 IMPORT_C gulong               g_value_get_ulong         (const GValue *value);
00074 IMPORT_C void                 g_value_set_int64         (GValue       *value,
00075                                                  gint64        v_int64);
00076 IMPORT_C gint64               g_value_get_int64         (const GValue *value);
00077 IMPORT_C void                 g_value_set_uint64        (GValue       *value,
00078                                                  guint64      v_uint64);
00079 IMPORT_C guint64                      g_value_get_uint64        (const GValue *value);
00080 IMPORT_C void                 g_value_set_float         (GValue       *value,
00081                                                  gfloat        v_float);
00082 IMPORT_C gfloat               g_value_get_float         (const GValue *value);
00083 IMPORT_C void                 g_value_set_double        (GValue       *value,
00084                                                  gdouble       v_double);
00085 IMPORT_C gdouble                      g_value_get_double        (const GValue *value);
00086 IMPORT_C void                 g_value_set_string        (GValue       *value,
00087                                                  const gchar  *v_string);
00088 IMPORT_C void                 g_value_set_static_string (GValue       *value,
00089                                                  const gchar  *v_string);
00090 IMPORT_C G_CONST_RETURN gchar* g_value_get_string       (const GValue *value);
00091 IMPORT_C gchar*               g_value_dup_string        (const GValue *value);
00092 IMPORT_C void                 g_value_set_pointer       (GValue       *value,
00093                                                  gpointer      v_pointer);
00094 IMPORT_C gpointer             g_value_get_pointer       (const GValue *value);
00095 IMPORT_C GType                g_gtype_get_type          (void);
00096 IMPORT_C void                 g_value_set_gtype         (GValue       *value,
00097                                                  GType         v_gtype);
00098 IMPORT_C GType                g_value_get_gtype         (const GValue *value);
00099 
00100 
00101 /* Convenience for registering new pointer types */
00102 IMPORT_C GType                 g_pointer_type_register_static (const gchar *name);
00103 
00104 /* debugging aid, describe value contents as string */
00105 IMPORT_C gchar*                g_strdup_value_contents   (const GValue *value);
00106 
00107 
00108 IMPORT_C void g_value_take_string                       (GValue            *value,
00109                                                  gchar             *v_string);
00110 #ifndef G_DISABLE_DEPRECATED
00111 IMPORT_C void g_value_set_string_take_ownership         (GValue            *value,
00112                                                  gchar             *v_string);
00113 #endif
00114 
00115 
00116 /* humpf, need a C representable type name for G_TYPE_STRING */
00117 typedef gchar* gchararray;
00118 
00119 
00120 G_END_DECLS
00121 
00122 #endif /* __G_VALUETYPES_H__ */

Copyright © Nokia Corporation 2001-2008
Back to top