Struct
GObjectTypeInfo
Description [src]
struct GTypeInfo {
guint16 class_size;
GBaseInitFunc base_init;
GBaseFinalizeFunc base_finalize;
GClassInitFunc class_init;
GClassFinalizeFunc class_finalize;
gconstpointer class_data;
guint16 instance_size;
guint16 n_preallocs;
GInstanceInitFunc instance_init;
const GTypeValueTable* value_table;
}
This structure is used to provide the type system with the information required to initialize and destruct (finalize) a type’s class and its instances.
The initialized structure is passed to the g_type_register_static() function
(or is copied into the provided GTypeInfo structure in the
g_type_plugin_complete_type_info()). The type system will perform a deep
copy of this structure, so its memory does not need to be persistent
across invocation of g_type_register_static().
Structure members
class_sizeSize of the class structure (required for interface, classed and instantiatable types).
base_initLocation of the base initialization function (optional).
base_finalizeLocation of the base finalization function (optional).
class_initLocation of the class initialization function for classed and instantiatable types. Location of the default vtable initialization function for interface types. (optional) This function is used both to fill in virtual functions in the class or default vtable, and to do type-specific setup such as registering signals and object properties.
class_finalizeLocation of the class finalization function for classed and instantiatable types. Location of the default vtable finalization function for interface types. (optional).
class_dataUser-supplied data passed to the class init/finalize functions.
instance_sizeSize of the instance (object) structure (required for instantiatable types only).
n_preallocsPrior 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 this field is ignored.
instance_initLocation of the instance initialization function (optional, for instantiatable types only).
value_tableA
GTypeValueTablefunction table for generic handling of GValues of this type (usually only useful for fundamental types).