00001
00002 #include <glib-object.h>
00003
00004
00005 #ifdef G_ENABLE_DEBUG
00006 #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
00007 #define g_marshal_value_peek_char(v) g_value_get_char (v)
00008 #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v)
00009 #define g_marshal_value_peek_int(v) g_value_get_int (v)
00010 #define g_marshal_value_peek_uint(v) g_value_get_uint (v)
00011 #define g_marshal_value_peek_long(v) g_value_get_long (v)
00012 #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v)
00013 #define g_marshal_value_peek_int64(v) g_value_get_int64 (v)
00014 #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v)
00015 #define g_marshal_value_peek_enum(v) g_value_get_enum (v)
00016 #define g_marshal_value_peek_flags(v) g_value_get_flags (v)
00017 #define g_marshal_value_peek_float(v) g_value_get_float (v)
00018 #define g_marshal_value_peek_double(v) g_value_get_double (v)
00019 #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v)
00020 #define g_marshal_value_peek_param(v) g_value_get_param (v)
00021 #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v)
00022 #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v)
00023 #define g_marshal_value_peek_object(v) g_value_get_object (v)
00024 #else
00025
00026
00027
00028
00029 #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int
00030 #define g_marshal_value_peek_char(v) (v)->data[0].v_int
00031 #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint
00032 #define g_marshal_value_peek_int(v) (v)->data[0].v_int
00033 #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint
00034 #define g_marshal_value_peek_long(v) (v)->data[0].v_long
00035 #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong
00036 #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64
00037 #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64
00038 #define g_marshal_value_peek_enum(v) (v)->data[0].v_long
00039 #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong
00040 #define g_marshal_value_peek_float(v) (v)->data[0].v_float
00041 #define g_marshal_value_peek_double(v) (v)->data[0].v_double
00042 #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer
00043 #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer
00044 #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer
00045 #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer
00046 #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer
00047 #endif
00048
00049
00050
00051 void
00052 g_cclosure_user_marshal_VOID__UINT64 (GClosure *closure,
00053 GValue *return_value G_GNUC_UNUSED,
00054 guint n_param_values,
00055 const GValue *param_values,
00056 gpointer invocation_hint G_GNUC_UNUSED,
00057 gpointer marshal_data)
00058 {
00059 typedef void (*GMarshalFunc_VOID__UINT64) (gpointer data1,
00060 guint64 arg_1,
00061 gpointer data2);
00062 register GMarshalFunc_VOID__UINT64 callback;
00063 register GCClosure *cc = (GCClosure*) closure;
00064 register gpointer data1, data2;
00065
00066 g_return_if_fail (n_param_values == 2);
00067
00068 if (G_CCLOSURE_SWAP_DATA (closure))
00069 {
00070 data1 = closure->data;
00071 data2 = g_value_peek_pointer (param_values + 0);
00072 }
00073 else
00074 {
00075 data1 = g_value_peek_pointer (param_values + 0);
00076 data2 = closure->data;
00077 }
00078 callback = (GMarshalFunc_VOID__UINT64) (marshal_data ? marshal_data : cc->callback);
00079
00080 callback (data1,
00081 g_marshal_value_peek_uint64 (param_values + 1),
00082 data2);
00083 }
00084