VuoList interface.
Definition in file VuoList_VuoSceneObjectType.h.
Go to the source code of this file.
Classes | |
struct | VuoList_VuoSceneObjectType |
An ordered list of items, all of the same type. More... | |
Functions | |
VuoList_VuoSceneObjectType | VuoListCreate_VuoSceneObjectType (void) |
Creates a new list of VuoSceneObjectType items. | |
VuoList_VuoSceneObjectType | VuoListCreateWithCount_VuoSceneObjectType (const unsigned long count, const VuoSceneObjectType value) |
Creates a new list of count instances of value. | |
VuoList_VuoSceneObjectType | VuoListCreateWithValueArray_VuoSceneObjectType (const VuoSceneObjectType *values, const unsigned long valueCount) |
Creates a new list containing the items in the C array values. | |
VuoList_VuoSceneObjectType | VuoListCopy_VuoSceneObjectType (const VuoList_VuoSceneObjectType list) |
Makes a shallow copy of list — its items are retained (not copied) by the new list. | |
VuoSceneObjectType | VuoListGetValue_VuoSceneObjectType (const VuoList_VuoSceneObjectType list, const unsigned long index) |
Returns the item at index. | |
VuoSceneObjectType * | VuoListGetData_VuoSceneObjectType (const VuoList_VuoSceneObjectType list) |
Returns a pointer to a C array containing the list items. | |
void | VuoListForeach_VuoSceneObjectType (const VuoList_VuoSceneObjectType list, bool(^function)(const VuoSceneObjectType value)) |
Applies function to each item in list, serially in order of index. | |
void | VuoListSetValue_VuoSceneObjectType (const VuoList_VuoSceneObjectType list, const VuoSceneObjectType value, const unsigned long index, bool expandListIfNeeded) |
Changes the item at index. | |
void | VuoListInsertValue_VuoSceneObjectType (const VuoList_VuoSceneObjectType list, const VuoSceneObjectType value, const unsigned long index) |
Inserts value immediately before index. | |
void | VuoListPrependValue_VuoSceneObjectType (VuoList_VuoSceneObjectType list, const VuoSceneObjectType value) |
Prepends value to list. | |
void | VuoListAppendValue_VuoSceneObjectType (VuoList_VuoSceneObjectType list, const VuoSceneObjectType value) |
Appends value to list. | |
void | VuoListExchangeValues_VuoSceneObjectType (VuoList_VuoSceneObjectType list, const unsigned long indexA, const unsigned long indexB) |
Swaps the value at indexA with the value at indexB. | |
void | VuoListShuffle_VuoSceneObjectType (VuoList_VuoSceneObjectType list, const double chaos) |
Generates a random permutation of list. | |
void | VuoListReverse_VuoSceneObjectType (VuoList_VuoSceneObjectType list) |
Reverses the order of the items in list. | |
VuoList_VuoSceneObjectType | VuoListSubset_VuoSceneObjectType (VuoList_VuoSceneObjectType list, const signed long startIndex, const unsigned long itemCount) |
Returns a new list containing items from the original list in the range specified by startIndex and itemCount. | |
void | VuoListRemoveFirstValue_VuoSceneObjectType (VuoList_VuoSceneObjectType list) |
Removes the first item from list. | |
void | VuoListRemoveLastValue_VuoSceneObjectType (VuoList_VuoSceneObjectType list) |
Removes the last item from list. | |
void | VuoListRemoveAll_VuoSceneObjectType (VuoList_VuoSceneObjectType list) |
Removes all items from list. | |
void | VuoListRemoveValue_VuoSceneObjectType (VuoList_VuoSceneObjectType list, const unsigned long index) |
Removes the item at index. | |
unsigned long | VuoListGetCount_VuoSceneObjectType (const VuoList_VuoSceneObjectType list) |
Returns the number of items in list. | |
VuoList_VuoSceneObjectType | VuoList_VuoSceneObjectType_makeFromJson (struct json_object *js) |
Decodes the JSON object js to create a new list. | |
struct json_object * | VuoList_VuoSceneObjectType_getJson (const VuoList_VuoSceneObjectType list) |
Encodes list as a JSON object. | |
char * | VuoList_VuoSceneObjectType_getSummary (const VuoList_VuoSceneObjectType list) |
Produces a brief human-readable summary of list . | |
void | VuoList_VuoSceneObjectType_retain (VuoList_VuoSceneObjectType list) |
Retains the list. | |
void | VuoList_VuoSceneObjectType_release (VuoList_VuoSceneObjectType list) |
Releases the list. | |
char * | VuoList_VuoSceneObjectType_getString (const VuoList_VuoSceneObjectType list) |
Automatically generated function. | |
struct json_object * VuoList_VuoSceneObjectType_getJson | ( | const VuoList_VuoSceneObjectType | list | ) |
Encodes list as a JSON object.
char * VuoList_VuoSceneObjectType_getString | ( | const VuoList_VuoSceneObjectType | list | ) |
Automatically generated function.
char * VuoList_VuoSceneObjectType_getSummary | ( | const VuoList_VuoSceneObjectType | list | ) |
Produces a brief human-readable summary of list
.
VuoList_VuoSceneObjectType VuoList_VuoSceneObjectType_makeFromJson | ( | struct json_object * | js | ) |
Decodes the JSON object js to create a new list.
void VuoList_VuoSceneObjectType_release | ( | VuoList_VuoSceneObjectType | list | ) |
Releases the list.
This function is provided for use in polymorphism; it just calls VuoRelease()
.
void VuoList_VuoSceneObjectType_retain | ( | VuoList_VuoSceneObjectType | list | ) |
Retains the list.
This function is provided for use in polymorphism; it just calls VuoRetain()
.
void VuoListAppendValue_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list, |
const VuoSceneObjectType | value | ||
) |
Appends value to list.
VuoList_VuoSceneObjectType VuoListCopy_VuoSceneObjectType | ( | const VuoList_VuoSceneObjectType | list | ) |
Makes a shallow copy of list — its items are retained (not copied) by the new list.
VuoList_VuoSceneObjectType VuoListCreate_VuoSceneObjectType | ( | void | ) |
Creates a new list of VuoSceneObjectType
items.
VuoList_VuoSceneObjectType VuoListCreateWithCount_VuoSceneObjectType | ( | const unsigned long | count, |
const VuoSceneObjectType | value | ||
) |
Creates a new list of count instances of value.
Use this in conjunction with VuoListGetData_VuoSceneObjectType to quickly initialize a large list.
VuoList_VuoSceneObjectType VuoListCreateWithValueArray_VuoSceneObjectType | ( | const VuoSceneObjectType * | values, |
const unsigned long | valueCount | ||
) |
Creates a new list containing the items in the C array values.
The list retains each item in values. The caller may discard values after this function returns.
void VuoListExchangeValues_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list, |
const unsigned long | indexA, | ||
const unsigned long | indexB | ||
) |
Swaps the value at indexA with the value at indexB.
void VuoListForeach_VuoSceneObjectType | ( | const VuoList_VuoSceneObjectType | list, |
bool(^)(const VuoSceneObjectType value) | function | ||
) |
Applies function to each item in list, serially in order of index.
If function returns false, visiting will stop immediately (possibly before all items have been visited).
unsigned long VuoListGetCount_VuoSceneObjectType | ( | const VuoList_VuoSceneObjectType | list | ) |
Returns the number of items in list.
VuoSceneObjectType * VuoListGetData_VuoSceneObjectType | ( | const VuoList_VuoSceneObjectType | list | ) |
Returns a pointer to a C array containing the list items.
Use this if you need a fast way to get or change multiple list items.
You can modify values in the list by changing them in this array. Just don't attempt to access beyond the list size.
The pointer becomes invalid if you modify the list size using other functions (e.g., Insert, Prepend, Append, Cut, Remove); if you use those functions, just get a new pointer by calling this function again.
If the list has no items, returns NULL.
The pointer remains owned by the list; don't free it.
VuoSceneObjectType VuoListGetValue_VuoSceneObjectType | ( | const VuoList_VuoSceneObjectType | list, |
const unsigned long | index | ||
) |
Returns the item at index.
Index values start at 1.
If the list has no items, returns a default value (an empty/zero value of VuoSceneObjectType
).
Attempting to access an out-of-bounds index returns the first item in the list (if the index is 0), or last item in the list (if the index is greater than the list size).
If iterating over an entire list, consider using VuoListGetData_VuoSceneObjectType or VuoListForeach_VuoSceneObjectType.
void VuoListInsertValue_VuoSceneObjectType | ( | const VuoList_VuoSceneObjectType | list, |
const VuoSceneObjectType | value, | ||
const unsigned long | index | ||
) |
Inserts value immediately before index.
Index values start at 1.
Inserting at index 0 prepends the value to the list. Inserting at an index beyond the last value in the list appends the value to the list.
void VuoListPrependValue_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list, |
const VuoSceneObjectType | value | ||
) |
Prepends value to list.
void VuoListRemoveAll_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list | ) |
Removes all items from list.
void VuoListRemoveFirstValue_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list | ) |
Removes the first item from list.
void VuoListRemoveLastValue_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list | ) |
Removes the last item from list.
void VuoListRemoveValue_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list, |
const unsigned long | index | ||
) |
Removes the item at index.
Index values start at 1.
Attempting to remove index 0 or an index beyond the last value in the list has no effect.
void VuoListReverse_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list | ) |
Reverses the order of the items in list.
void VuoListSetValue_VuoSceneObjectType | ( | const VuoList_VuoSceneObjectType | list, |
const VuoSceneObjectType | value, | ||
const unsigned long | index, | ||
bool | expandListIfNeeded | ||
) |
Changes the item at index.
Index values start at 1.
If expandListIfNeeded is false — If the list has no items, nothing is changed. Attempting to change an out-of-bounds index changes the first item in the list (if the index is 0), or last item in the list (if the index is greater than the list size).
If expandListIfNeeded is true — If the list has less than index items, it is expanded to accommodate the specified index. If index is 0, the list is resized to contain 1 item set to value.
void VuoListShuffle_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list, |
const double | chaos | ||
) |
Generates a random permutation of list.
chaos ranges from 0 to 1. When chaos is 1, a full Fisher–Yates shuffle is performed. When less than 1, fewer iterations are performed.
VuoList_VuoSceneObjectType VuoListSubset_VuoSceneObjectType | ( | VuoList_VuoSceneObjectType | list, |
const signed long | startIndex, | ||
const unsigned long | itemCount | ||
) |
Returns a new list containing items from the original list in the range specified by startIndex and itemCount.
Items in the new list are retained (not copied) from the original list.