GIObjectInfo

GIObjectInfo — Struct representing a GObject

Synopsis

#define             GI_IS_OBJECT_INFO                   (info)
typedef             GIObjectInfo;
void *              (*GIObjectInfoGetValueFunction)     (const GValue *value);
void *              (*GIObjectInfoRefFunction)          (void *object);
void                (*GIObjectInfoSetValueFunction)     (GValue *value,
                                                         void *object);
void                (*GIObjectInfoUnrefFunction)        (void *object);
const gchar *       g_object_info_get_type_name         (GIObjectInfo *info);
const gchar *       g_object_info_get_type_init         (GIObjectInfo *info);
gboolean            g_object_info_get_abstract          (GIObjectInfo *info);
gboolean            g_object_info_get_fundamental       (GIObjectInfo *info);
GIObjectInfo *      g_object_info_get_parent            (GIObjectInfo *info);
gint                g_object_info_get_n_interfaces      (GIObjectInfo *info);
GIInterfaceInfo *   g_object_info_get_interface         (GIObjectInfo *info,
                                                         gint n);
gint                g_object_info_get_n_fields          (GIObjectInfo *info);
GIFieldInfo *       g_object_info_get_field             (GIObjectInfo *info,
                                                         gint n);
gint                g_object_info_get_n_properties      (GIObjectInfo *info);
GIPropertyInfo *    g_object_info_get_property          (GIObjectInfo *info,
                                                         gint n);
gint                g_object_info_get_n_methods         (GIObjectInfo *info);
GIFunctionInfo *    g_object_info_get_method            (GIObjectInfo *info,
                                                         gint n);
GIFunctionInfo *    g_object_info_find_method           (GIObjectInfo *info,
                                                         const gchar *name);
gint                g_object_info_get_n_signals         (GIObjectInfo *info);
GISignalInfo *      g_object_info_get_signal            (GIObjectInfo *info,
                                                         gint n);
gint                g_object_info_get_n_vfuncs          (GIObjectInfo *info);
GIVFuncInfo *       g_object_info_get_vfunc             (GIObjectInfo *info,
                                                         gint n);
gint                g_object_info_get_n_constants       (GIObjectInfo *info);
GIConstantInfo *    g_object_info_get_constant          (GIObjectInfo *info,
                                                         gint n);
GIStructInfo *      g_object_info_get_class_struct      (GIObjectInfo *info);
GIVFuncInfo *       g_object_info_find_vfunc            (GIObjectInfo *info,
                                                         const gchar *name);
const char *        g_object_info_get_unref_function    (GIObjectInfo *info);
GIObjectInfoUnrefFunction  g_object_info_get_unref_function_pointer
                                                        (GIObjectInfo *info);
const char *        g_object_info_get_ref_function      (GIObjectInfo *info);
GIObjectInfoRefFunction  g_object_info_get_ref_function_pointer
                                                        (GIObjectInfo *info);
const char *        g_object_info_get_set_value_function
                                                        (GIObjectInfo *info);
GIObjectInfoSetValueFunction  g_object_info_get_set_value_function_pointer
                                                        (GIObjectInfo *info);
const char *        g_object_info_get_get_value_function
                                                        (GIObjectInfo *info);
GIObjectInfoGetValueFunction  g_object_info_get_get_value_function_pointer
                                                        (GIObjectInfo *info);

Description

GIObjectInfo represents a GObject. This doesn't represent a specific instance of a GObject, instead this represent the object type (eg class).

A GObject has methods, fields, properties, signals, interfaces, constants and virtual functions.

Struct hierarchy

  GIBaseInfo
   +----GIRegisteredTypeInfo
         +----GIObjectInfo

Details

GI_IS_OBJECT_INFO()

#define             GI_IS_OBJECT_INFO(info)

info :


GIObjectInfo

typedef GIBaseInfo GIObjectInfo;

Represents an object.


GIObjectInfoGetValueFunction ()

void *              (*GIObjectInfoGetValueFunction)     (const GValue *value);

Extract an object instance out of value

value :

a GValue

Returns :

the object instance. [transfer full]

GIObjectInfoRefFunction ()

void *              (*GIObjectInfoRefFunction)          (void *object);

Increases the reference count of an object instance.

object :

object instance pointer

Returns :

the object instance. [transfer full]

GIObjectInfoSetValueFunction ()

void                (*GIObjectInfoSetValueFunction)     (GValue *value,
                                                         void *object);

Update value and attach the object instance pointer object to it.

value :

a GValue

object :

object instance pointer

GIObjectInfoUnrefFunction ()

void                (*GIObjectInfoUnrefFunction)        (void *object);

Decreases the reference count of an object instance.

object :

object instance pointer

g_object_info_get_type_name ()

const gchar *       g_object_info_get_type_name         (GIObjectInfo *info);

Obtain the name of the objects class/type.

info :

a GIObjectInfo

Returns :

name of the objects type

g_object_info_get_type_init ()

const gchar *       g_object_info_get_type_init         (GIObjectInfo *info);

Obtain the function which when called will return the GType function for which this object type is registered.

info :

a GIObjectInfo

Returns :

the type init function

g_object_info_get_abstract ()

gboolean            g_object_info_get_abstract          (GIObjectInfo *info);

Obtain if the object type is an abstract type, eg if it cannot be instantiated

info :

a GIObjectInfo

Returns :

TRUE if the object type is abstract

g_object_info_get_fundamental ()

gboolean            g_object_info_get_fundamental       (GIObjectInfo *info);

Obtain if the object type is of a fundamental type which is not G_TYPE_OBJECT. This is mostly for supporting GstMiniObject.

info :

a GIObjectInfo

Returns :

TRUE if the object type is a fundamental type

g_object_info_get_parent ()

GIObjectInfo *      g_object_info_get_parent            (GIObjectInfo *info);

Obtain the parent of the object type.

info :

a GIObjectInfo

Returns :

the GIObjectInfo. Free the struct by calling g_base_info_unref() when done. [transfer full]

g_object_info_get_n_interfaces ()

gint                g_object_info_get_n_interfaces      (GIObjectInfo *info);

Obtain the number of interfaces that this object type has.

info :

a GIObjectInfo

Returns :

number of interfaces

g_object_info_get_interface ()

GIInterfaceInfo *   g_object_info_get_interface         (GIObjectInfo *info,
                                                         gint n);

Obtain an object type interface at index n.

info :

a GIObjectInfo

n :

index of interface to get

Returns :

the GIInterfaceInfo. Free the struct by calling g_base_info_unref() when done. [transfer full]

g_object_info_get_n_fields ()

gint                g_object_info_get_n_fields          (GIObjectInfo *info);

Obtain the number of fields that this object type has.

info :

a GIObjectInfo

Returns :

number of fields

g_object_info_get_field ()

GIFieldInfo *       g_object_info_get_field             (GIObjectInfo *info,
                                                         gint n);

Obtain an object type field at index n.

info :

a GIObjectInfo

n :

index of field to get

Returns :

the GIFieldInfo. Free the struct by calling g_base_info_unref() when done. [transfer full]

g_object_info_get_n_properties ()

gint                g_object_info_get_n_properties      (GIObjectInfo *info);

Obtain the number of properties that this object type has.

info :

a GIObjectInfo

Returns :

number of properties

g_object_info_get_property ()

GIPropertyInfo *    g_object_info_get_property          (GIObjectInfo *info,
                                                         gint n);

Obtain an object type property at index n.

info :

a GIObjectInfo

n :

index of property to get

Returns :

the GIPropertyInfo. Free the struct by calling g_base_info_unref() when done. [transfer full]

g_object_info_get_n_methods ()

gint                g_object_info_get_n_methods         (GIObjectInfo *info);

Obtain the number of methods that this object type has.

info :

a GIObjectInfo

Returns :

number of methods

g_object_info_get_method ()

GIFunctionInfo *    g_object_info_get_method            (GIObjectInfo *info,
                                                         gint n);

Obtain an object type method at index n.

info :

a GIObjectInfo

n :

index of method to get

Returns :

the GIFunctionInfo. Free the struct by calling g_base_info_unref() when done. [transfer full]

g_object_info_find_method ()

GIFunctionInfo *    g_object_info_find_method           (GIObjectInfo *info,
                                                         const gchar *name);

Obtain a method of the object type given a name. NULL will be returned if there's no method available with that name.

info :

a GIObjectInfo

name :

name of method to obtain

Returns :

the GIFunctionInfo. Free the struct by calling g_base_info_unref() when done. [transfer full]

g_object_info_get_n_signals ()

gint                g_object_info_get_n_signals         (GIObjectInfo *info);

Obtain the number of signals that this object type has.

info :

a GIObjectInfo

Returns :

number of signals

g_object_info_get_signal ()

GISignalInfo *      g_object_info_get_signal            (GIObjectInfo *info,
                                                         gint n);

Obtain an object type signal at index n.

info :

a GIObjectInfo

n :

index of signal to get

Returns :

the GISignalInfo. Free the struct by calling g_base_info_unref() when done. [transfer full]

g_object_info_get_n_vfuncs ()

gint                g_object_info_get_n_vfuncs          (GIObjectInfo *info);

Obtain the number of virtual functions that this object type has.

info :

a GIObjectInfo

Returns :

number of virtual functions

g_object_info_get_vfunc ()

GIVFuncInfo *       g_object_info_get_vfunc             (GIObjectInfo *info,
                                                         gint n);

Obtain an object type virtual function at index n.

info :

a GIObjectInfo

n :

index of virtual function to get

Returns :

the GIVFuncInfo. Free the struct by calling g_base_info_unref() when done. [transfer full]

g_object_info_get_n_constants ()

gint                g_object_info_get_n_constants       (GIObjectInfo *info);

Obtain the number of constants that this object type has.

info :

a GIObjectInfo

Returns :

number of constants

g_object_info_get_constant ()

GIConstantInfo *    g_object_info_get_constant          (GIObjectInfo *info,
                                                         gint n);

Obtain an object type constant at index n.

info :

a GIObjectInfo

n :

index of constant to get

Returns :

the GIConstantInfo. Free the struct by calling g_base_info_unref() when done. [transfer full]

g_object_info_get_class_struct ()

GIStructInfo *      g_object_info_get_class_struct      (GIObjectInfo *info);

Every GObject has two structures; an instance structure and a class structure. This function returns the metadata for the class structure.

info :

a GIObjectInfo

Returns :

the GIStructInfo or NULL. Free with g_base_info_unref() when done. [transfer full]

g_object_info_find_vfunc ()

GIVFuncInfo *       g_object_info_find_vfunc            (GIObjectInfo *info,
                                                         const gchar *name);

Locate a virtual function slot with name name. Note that the namespace for virtuals is distinct from that of methods; there may or may not be a concrete method associated for a virtual. If there is one, it may be retrieved using g_vfunc_info_get_invoker(), otherwise NULL will be returned. See the documentation for g_vfunc_info_get_invoker() for more information on invoking virtuals.

info :

a GIObjectInfo

name :

The name of a virtual function to find.

Returns :

the GIVFuncInfo, or NULL. Free it with g_base_info_unref() when done. [transfer full]

g_object_info_get_unref_function ()

const char *        g_object_info_get_unref_function    (GIObjectInfo *info);

Obtain the symbol name of the function that should be called to unref this object type. It's mainly used fundamental types. The type signature for the symbol is GIObjectInfoUnrefFunction, to fetch the function pointer see g_object_info_get_unref_function().

info :

a GIObjectInfo

Returns :

the symbol or NULL

g_object_info_get_unref_function_pointer ()

GIObjectInfoUnrefFunction  g_object_info_get_unref_function_pointer
                                                        (GIObjectInfo *info);

Obtain a pointer to a function which can be used to decrease the reference count an instance of this object type. This takes derivation into account and will reversely traverse the base classes of this type, starting at the top type.

info :

a GIObjectInfo

Returns :

the function pointer or NULL

g_object_info_get_ref_function ()

const char *        g_object_info_get_ref_function      (GIObjectInfo *info);

Obtain the symbol name of the function that should be called to ref this object type. It's mainly used fundamental types. The type signature for the symbol is GIObjectInfoRefFunction, to fetch the function pointer see g_object_info_get_ref_function().

info :

a GIObjectInfo

Returns :

the symbol or NULL

g_object_info_get_ref_function_pointer ()

GIObjectInfoRefFunction  g_object_info_get_ref_function_pointer
                                                        (GIObjectInfo *info);

Obtain a pointer to a function which can be used to increase the reference count an instance of this object type. This takes derivation into account and will reversely traverse the base classes of this type, starting at the top type.

info :

a GIObjectInfo

Returns :

the function pointer or NULL

g_object_info_get_set_value_function ()

const char *        g_object_info_get_set_value_function
                                                        (GIObjectInfo *info);

Obtain the symbol name of the function that should be called to convert set a GValue giving an object instance pointer of this object type. I's mainly used fundamental types. The type signature for the symbol is GIObjectInfoSetValueFunction, to fetch the function pointer see g_object_info_get_set_value_function().

info :

a GIObjectInfo

Returns :

the symbol or NULL

g_object_info_get_set_value_function_pointer ()

GIObjectInfoSetValueFunction  g_object_info_get_set_value_function_pointer
                                                        (GIObjectInfo *info);

Obtain a pointer to a function which can be used to set a GValue given an instance of this object type. This takes derivation into account and will reversely traverse the base classes of this type, starting at the top type.

info :

a GIObjectInfo

Returns :

the function pointer or NULL

g_object_info_get_get_value_function ()

const char *        g_object_info_get_get_value_function
                                                        (GIObjectInfo *info);

Obtain the symbol name of the function that should be called to convert an object instance pointer of this object type to a GValue. I's mainly used fundamental types. The type signature for the symbol is GIObjectInfoGetValueFunction, to fetch the function pointer see g_object_info_get_get_value_function().

info :

a GIObjectInfo

Returns :

the symbol or NULL

g_object_info_get_get_value_function_pointer ()

GIObjectInfoGetValueFunction  g_object_info_get_get_value_function_pointer
                                                        (GIObjectInfo *info);

Obtain a pointer to a function which can be used to extract an instance of this object type out of a GValue. This takes derivation into account and will reversely traverse the base classes of this type, starting at the top type.

info :

a GIObjectInfo

Returns :

the function pointer or NULL