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: guint16

Size of the instance (object) structure.

n_preallocs: guint16

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: void (* instance_init) ( GParamSpec* pspec )

Location of the instance initialization function (optional).

value_type: GType

The GType of values conforming to this GParamSpec.

finalize: void (* finalize) ( GParamSpec* pspec )

The instance finalization function (optional).

value_set_default: void (* value_set_default) ( GParamSpec* pspec, GValue* value )

Resets a value to the default value for pspec (recommended, the default is g_value_reset()), see g_param_value_set_default().

value_validate: gboolean (* value_validate) ( GParamSpec* pspec, GValue* value )

Ensures that the contents of value comply with the specifications set out by pspec (optional), see g_param_value_validate().

values_cmp: gint (* values_cmp) ( GParamSpec* pspec, const GValue* value1, const GValue* value2 )

Compares value1 with value2 according to pspec (recommended, the default is memcmp()), see g_param_values_cmp().