glibmm
2.31.22
|
A container structure to maintain an array of generic values. More...
#include <glibmm/valuearray.h>
Public Types | |
typedef sigc::slot< int, const Glib::ValueBase&, const Glib::ValueBase& > | SlotCompare |
For example, int on_compare(const Glib::ValueBase& v1, const Glib::ValueBase& v2);. | |
Public Member Functions | |
ValueArray (GValueArray* gobject, bool make_a_copy=true) | |
ValueArray (const ValueArray& other) | |
ValueArray& | operator= (const ValueArray& other) |
~ValueArray () | |
void | swap (ValueArray& other) |
GValueArray* | gobj () |
Provides access to the underlying C instance. | |
const GValueArray* | gobj () const |
Provides access to the underlying C instance. | |
GValueArray* | gobj_copy () const |
Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs. | |
ValueArray () | |
Default constructor. | |
ValueArray (guint n_preallocated) | |
Constructs a new array with pre-allocation. | |
bool | get_nth (guint index, Glib::ValueBase&value) |
Return the value at index contained in the value array. | |
Glib::ValueArray& | append (const Glib::ValueBase&value) |
Insert a copy of value as last element of value_array. | |
Glib::ValueArray& | prepend (const Glib::ValueBase&value) |
Insert a copy of value as first element of value_array. | |
Glib::ValueArray& | insert (guint index, const Glib::ValueBase&value) |
Insert a copy of value at specified position into value_array. | |
Glib::ValueArray& | remove (guint index) |
Remove the value at position index from value_array. | |
Glib::ValueArray& | sort (const SlotCompare& compare_func) |
Sort value_array using compare_func to compare the elements according to the semantics of CompareFunc. | |
Protected Attributes | |
GValueArray* | gobject_ |
Related Functions | |
(Note that these are not member functions.) | |
void | swap (ValueArray& lhs, ValueArray& rhs) |
Glib::ValueArray | wrap (GValueArray* object, bool take_copy=false) |
A Glib::wrap() method for this object. |
A container structure to maintain an array of generic values.
The prime purpose of a ValueArray is for it to be used as an object property that holds an array of values. A ValueArray wraps an array of ValueBase elements.
typedef sigc::slot<int, const Glib::ValueBase&, const Glib::ValueBase&> Glib::ValueArray::SlotCompare |
For example, int on_compare(const Glib::ValueBase& v1, const Glib::ValueBase& v2);.
The compare function should return -1 if v1 < v2, 0 if v1 == v2, and 1 if v1 > v2.
Glib::ValueArray::ValueArray | ( | GValueArray * | gobject, |
bool | make_a_copy = true |
||
) | [explicit] |
Glib::ValueArray::ValueArray | ( | const ValueArray& | other | ) |
Default constructor.
Constructs a new array with no pre-allocation.
Glib::ValueArray::ValueArray | ( | guint | n_preallocated | ) |
Constructs a new array with pre-allocation.
Glib::ValueArray& Glib::ValueArray::append | ( | const Glib::ValueBase& | value | ) |
Insert a copy of value as last element of value_array.
If value is 0
, an uninitialized value is appended.
Deprecated: 2.32: Use Array and Glib::array_append_val() instead.
value | Value to copy into ValueArray, or 0 . |
bool Glib::ValueArray::get_nth | ( | guint | index, |
Glib::ValueBase& | value | ||
) |
Return the value at index contained in the value array.
index | Index of the value of interest. |
value | An uninitialized ValueBase in which to store the result. If the get is successful, value will be valid, otherwise it will remain uninitialized. |
GValueArray* Glib::ValueArray::gobj | ( | ) | [inline] |
Provides access to the underlying C instance.
const GValueArray* Glib::ValueArray::gobj | ( | ) | const [inline] |
Provides access to the underlying C instance.
GValueArray* Glib::ValueArray::gobj_copy | ( | ) | const |
Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.
Glib::ValueArray& Glib::ValueArray::insert | ( | guint | index, |
const Glib::ValueBase& | value | ||
) |
Insert a copy of value at specified position into value_array.
If value is 0
, an uninitialized value is inserted.
Deprecated: 2.32: Use Array and Glib::array_insert_val() instead.
index | Insertion position, must be <= value_array->n_values. |
value | Value to copy into ValueArray, or 0 . |
ValueArray& Glib::ValueArray::operator= | ( | const ValueArray& | other | ) |
Glib::ValueArray& Glib::ValueArray::prepend | ( | const Glib::ValueBase& | value | ) |
Insert a copy of value as first element of value_array.
If value is 0
, an uninitialized value is prepended.
Deprecated: 2.32: Use Array and Glib::array_prepend_val() instead.
value | Value to copy into ValueArray, or 0 . |
Glib::ValueArray& Glib::ValueArray::remove | ( | guint | index | ) |
Remove the value at position index from value_array.
Deprecated: 2.32: Use Array and g_array_remove_index() instead.
index | Position of value to remove, which must be less than value_array->n_values . |
Glib::ValueArray& Glib::ValueArray::sort | ( | const SlotCompare& | compare_func | ) |
Sort value_array using compare_func to compare the elements according to the semantics of CompareFunc.
The current implementation uses Quick-Sort as sorting algorithm.
Deprecated: 2.32: Use Array and g_array_sort().
compare_func | Function to compare elements. |
void Glib::ValueArray::swap | ( | ValueArray& | other | ) |
void swap | ( | ValueArray& | lhs, |
ValueArray& | rhs | ||
) | [related] |
lhs | The left-hand side |
rhs | The right-hand side |
Glib::ValueArray wrap | ( | GValueArray * | object, |
bool | take_copy = false |
||
) | [related] |
A Glib::wrap() method for this object.
object | The C instance. |
take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref. |
GValueArray* Glib::ValueArray::gobject_ [protected] |