mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-11-14 13:26:16 +01:00
728ab5ff7e
2005-05-02 Matthias Clasen <mclasen@redhat.com> * gobject/tmpl/signals.sgml: * gobject/tmpl/generic_values.sgml: * gobject/tmpl/gtype.sgml: * gobject/tmpl/value_arrays.sgml: * gobject/tmpl/param_value_types.sgml: * gobject/tmpl/gtypemodule.sgml: * gobject/tmpl/enumerations_flags.sgml: Small additions.
141 lines
3.8 KiB
Plaintext
141 lines
3.8 KiB
Plaintext
<!-- ##### SECTION Title ##### -->
|
|
Value arrays
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
|
A container structure to maintain an array of generic values
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
|
<para>
|
|
The prime purpose of a #GValueArray is for it to be used as an object property
|
|
that holds an array of values. A #GValueArray wraps an array of #GValue elements
|
|
in order for it to be used as a boxed type through %G_TYPE_VALUE_ARRAY.
|
|
</para>
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
|
<para>
|
|
#GValue, #GParamSpecValueArray, g_param_spec_value_array()
|
|
</para>
|
|
|
|
<!-- ##### SECTION Stability_Level ##### -->
|
|
|
|
|
|
<!-- ##### STRUCT GValueArray ##### -->
|
|
<para>
|
|
A #GValueArray contains an array of #GValue elements.
|
|
</para>
|
|
|
|
@n_values: number of values contained in the array
|
|
@values: array of values
|
|
|
|
<!-- ##### FUNCTION g_value_array_get_nth ##### -->
|
|
<para>
|
|
Return a pointer to the value at @index_ containd in @value_array.
|
|
</para>
|
|
|
|
@value_array: #GValueArray to get a value from
|
|
@index_: index of the value of interest
|
|
@Returns: pointer to a value at @index_ in @value_array
|
|
|
|
|
|
<!-- ##### FUNCTION g_value_array_new ##### -->
|
|
<para>
|
|
Allocate and initialize a new #GValueArray, optionally preserve space
|
|
for @n_prealloced elements. New arrays always contain 0 elements,
|
|
regardless of the value of @n_prealloced.
|
|
</para>
|
|
|
|
@n_prealloced: number of values to preallocate space for
|
|
@Returns: a newly allocated #GValueArray with 0 values
|
|
|
|
|
|
<!-- ##### FUNCTION g_value_array_copy ##### -->
|
|
<para>
|
|
Construct an exact copy of a #GValueArray by duplicating all its
|
|
contents.
|
|
</para>
|
|
|
|
@value_array: #GValueArray to copy
|
|
@Returns: Newly allocated copy of #GValueArray
|
|
|
|
|
|
<!-- ##### FUNCTION g_value_array_free ##### -->
|
|
<para>
|
|
Free a #GValueArray including its contents.
|
|
</para>
|
|
|
|
@value_array: #GValueArray to free
|
|
|
|
|
|
<!-- ##### FUNCTION g_value_array_append ##### -->
|
|
<para>
|
|
Insert a copy of @value as last element of @value_array.
|
|
</para>
|
|
|
|
@value_array: #GValueArray to add an element to
|
|
@value: #GValue to copy into #GValueArray
|
|
@Returns: the #GValueArray passed in as @value_array
|
|
|
|
|
|
<!-- ##### FUNCTION g_value_array_prepend ##### -->
|
|
<para>
|
|
Insert a copy of @value as first element of @value_array.
|
|
</para>
|
|
|
|
@value_array: #GValueArray to add an element to
|
|
@value: #GValue to copy into #GValueArray
|
|
@Returns: the #GValueArray passed in as @value_array
|
|
|
|
|
|
<!-- ##### FUNCTION g_value_array_insert ##### -->
|
|
<para>
|
|
Insert a copy of @value at specified position into @value_array.
|
|
</para>
|
|
|
|
@value_array: #GValueArray to add an element to
|
|
@index_: insertion position, must be <= value_array->n_values
|
|
@value: #GValue to copy into #GValueArray
|
|
@Returns: the #GValueArray passed in as @value_array
|
|
|
|
|
|
<!-- ##### FUNCTION g_value_array_remove ##### -->
|
|
<para>
|
|
Remove the value at position @index_ from @value_array.
|
|
</para>
|
|
|
|
@value_array: #GValueArray to remove an element from
|
|
@index_: position of value to remove, must be < value_array->n_values
|
|
@Returns: the #GValueArray passed in as @value_array
|
|
|
|
|
|
<!-- ##### FUNCTION g_value_array_sort ##### -->
|
|
<para>
|
|
Sort @value_array using @compare_func to compare the elements accoring to
|
|
the semantics of #GCompareFunc.
|
|
</para>
|
|
|
|
<para>
|
|
The current implementation uses Quick-Sort as sorting algorithm.
|
|
</para>
|
|
|
|
@value_array: #GValueArray to sort
|
|
@compare_func: function to compare elements
|
|
@Returns: the #GValueArray passed in as @value_array
|
|
|
|
|
|
<!-- ##### FUNCTION g_value_array_sort_with_data ##### -->
|
|
<para>
|
|
Sort @value_array using @compare_func to compare the elements accoring
|
|
to the semantics of #GCompareDataFunc.
|
|
</para>
|
|
|
|
<para>
|
|
The current implementation uses Quick-Sort as sorting algorithm.
|
|
</para>
|
|
|
|
@value_array: #GValueArray to sort
|
|
@compare_func: function to compare elements
|
|
@user_data: extra data argument provided for @compare_func
|
|
@Returns: the #GValueArray passed in as @value_array
|
|
|
|
|