Struct
GObjectParamSpecTypeInfo
Description [src]
struct GParamSpecTypeInfo {
guint16 instance_size;
guint16 n_preallocs;
void (* instance_init) (
GParamSpec* pspec
);
GType value_type;
void (* finalize) (
GParamSpec* pspec
);
void (* value_set_default) (
GParamSpec* pspec,
GValue* value
);
gboolean (* value_validate) (
GParamSpec* pspec,
GValue* value
);
gint (* values_cmp) (
GParamSpec* pspec,
const GValue* value1,
const GValue* value2
);
}
This structure is used to provide the type system with the information required to initialize and destruct (finalize) a parameter’s class and instances thereof.
The initialized structure is passed to the g_param_type_register_static()
The type system will perform a deep copy of this structure, so its memory
does not need to be persistent across invocation of g_param_type_register_static().
Structure members
instance_size
Size of the instance (object) structure.
n_preallocs
Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the [slice allocator][glib-Memory-Slices] now.
instance_init
Location of the instance initialization function (optional).
value_type
The
GType
of values conforming to thisGParamSpec
.finalize
The instance finalization function (optional).
value_set_default
Resets a
value
to the default value forpspec
(recommended, the default is g_value_reset()), see g_param_value_set_default().value_validate
Ensures that the contents of
value
comply with the specifications set out bypspec
(optional), see g_param_value_validate().values_cmp
Compares
value1
withvalue2
according topspec
(recommended, the default is memcmp()), see g_param_values_cmp().