Vuo 2.4.2
Loading...
Searching...
No Matches
Classes | Macros | Typedefs | Functions
VuoList_VuoLayer

Description

A list of VuoLayer elements.

Classes

struct  VuoList_VuoLayer_struct
 A list of VuoLayer elements. More...
 

Typedefs

typedef const struct VuoList_VuoLayer_structVuoList_VuoLayer
 A list of VuoLayer elements. More...
 

Functions

VuoList_VuoLayer VuoListCreate_VuoLayer (void)
 Creates a new list of VuoLayer elements. More...
 
VuoList_VuoLayer VuoListCreateWithCount_VuoLayer (const unsigned long count, const VuoLayer value)
 Creates a new list of count instances of value. More...
 
VuoList_VuoLayer VuoListCreateWithValueArray_VuoLayer (const VuoLayer *values, const unsigned long valueCount)
 Creates a new list containing the items in the C array values. More...
 
VuoList_VuoLayer VuoListCopy_VuoLayer (const VuoList_VuoLayer list)
 Makes a shallow copy of list — its items are retained (not copied) by the new list. More...
 
static unsigned long VuoListIndexToCArrayIndex (long index, unsigned long listCount) __attribute__((const))
 Converts a Vuo-style [1..n] list index into a C-style [0..n-1] list index. More...
 
VuoLayer VuoListGetValue_VuoLayer (const VuoList_VuoLayer list, const unsigned long index)
 Returns the VuoLayer at index. More...
 
VuoLayerVuoListGetData_VuoLayer (const VuoList_VuoLayer list)
 Returns a pointer to a C array containing the list items. More...
 
void VuoListForeach_VuoLayer (const VuoList_VuoLayer list, bool(^function)(const VuoLayer value))
 Applies function to each of list's items, serially in order of index. More...
 
void VuoListSetValue_VuoLayer (const VuoList_VuoLayer list, const VuoLayer value, const unsigned long index, bool expandListIfNeeded)
 Changes the VuoLayer at index. More...
 
void VuoListInsertValue_VuoLayer (const VuoList_VuoLayer list, const VuoLayer value, const unsigned long index)
 Inserts the VuoLayer immediately before index. More...
 
void VuoListPrependValue_VuoLayer (VuoList_VuoLayer list, const VuoLayer value)
 Prepends value to list. More...
 
void VuoListAppendValue_VuoLayer (VuoList_VuoLayer list, const VuoLayer value)
 Appends value to list. More...
 
void VuoListExchangeValues_VuoLayer (VuoList_VuoLayer list, const unsigned long indexA, const unsigned long indexB)
 Swaps the value at indexA with the value at indexB. More...
 
void VuoListShuffle_VuoLayer (VuoList_VuoLayer list, const double chaos)
 Generates a random permutation of list. More...
 
void VuoListReverse_VuoLayer (VuoList_VuoLayer list)
 Reverses the order of the items in list. More...
 
VuoList_VuoLayer VuoListSubset_VuoLayer (VuoList_VuoLayer 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. More...
 
void VuoListRemoveFirstValue_VuoLayer (VuoList_VuoLayer list)
 Removes the first value from list. More...
 
void VuoListRemoveLastValue_VuoLayer (VuoList_VuoLayer list)
 Removes the last value from list. More...
 
void VuoListRemoveAll_VuoLayer (VuoList_VuoLayer list)
 Removes all values from list. More...
 
void VuoListRemoveValue_VuoLayer (VuoList_VuoLayer list, const unsigned long index)
 Removes the VuoLayer at index. More...
 
unsigned long VuoListGetCount_VuoLayer (const VuoList_VuoLayer list)
 Returns the number of elements in list. More...
 
VuoList_VuoLayer VuoList_VuoLayer_makeFromJson (struct json_object *js)
 Decodes the JSON object js to create a new value. More...
 
struct json_objectVuoList_VuoLayer_getJson (const VuoList_VuoLayer value)
 Encodes value as a JSON object. More...
 
char * VuoList_VuoLayer_getSummary (const VuoList_VuoLayer value)
 Produces a brief human-readable summary of value. More...
 
void VuoList_VuoLayer_retain (VuoList_VuoLayer value)
 Retains the list. More...
 
void VuoList_VuoLayer_release (VuoList_VuoLayer value)
 Releases the list. More...
 
char * VuoList_VuoLayer_getString (const VuoList_VuoLayer value)
 Automatically generated function. More...
 

Class Documentation

◆ VuoList_VuoLayer_struct

struct VuoList_VuoLayer_struct
Class Members
void * l

Macro Definition Documentation

◆ VUO_LIST_INDEX_TO_C_ARRAY_INDEX

#define VUO_LIST_INDEX_TO_C_ARRAY_INDEX

Definition at line 63 of file VuoList_VuoLayer.h.

Typedef Documentation

◆ VuoList_VuoLayer

typedef const struct VuoList_VuoLayer_struct * VuoList_VuoLayer

A list of VuoLayer elements.

Function Documentation

◆ VuoList_VuoLayer_getJson()

struct json_object * VuoList_VuoLayer_getJson ( const VuoList_VuoLayer  value)

Encodes value as a JSON object.

Definition at line 84 of file VuoList_VuoLayer.cc.

◆ VuoList_VuoLayer_getString()

char * VuoList_VuoLayer_getString ( const VuoList_VuoLayer  value)

Automatically generated function.

◆ VuoList_VuoLayer_getSummary()

char * VuoList_VuoLayer_getSummary ( const VuoList_VuoLayer  value)

Produces a brief human-readable summary of value.

Definition at line 119 of file VuoList_VuoLayer.cc.

◆ VuoList_VuoLayer_makeFromJson()

VuoList_VuoLayer VuoList_VuoLayer_makeFromJson ( struct json_object js)

Decodes the JSON object js to create a new value.

Example:
["uno", "dos", "tres", "catorce"]

Definition at line 63 of file VuoList_VuoLayer.cc.

◆ VuoList_VuoLayer_release()

void VuoList_VuoLayer_release ( VuoList_VuoLayer  value)

Releases the list.

This function is provided for use in polymorphism; it just calls VuoRelease().

Definition at line 580 of file VuoList_VuoLayer.cc.

◆ VuoList_VuoLayer_retain()

void VuoList_VuoLayer_retain ( VuoList_VuoLayer  value)

Retains the list.

This function is provided for use in polymorphism; it just calls VuoRetain().

Definition at line 575 of file VuoList_VuoLayer.cc.

◆ VuoListAppendValue_VuoLayer()

void VuoListAppendValue_VuoLayer ( VuoList_VuoLayer  list,
const VuoLayer  value 
)

Appends value to list.

Definition at line 321 of file VuoList_VuoLayer.cc.

◆ VuoListCopy_VuoLayer()

VuoList_VuoLayer VuoListCopy_VuoLayer ( const VuoList_VuoLayer  list)

Makes a shallow copy of list — its items are retained (not copied) by the new list.

Definition at line 187 of file VuoList_VuoLayer.cc.

◆ VuoListCreate_VuoLayer()

VuoList_VuoLayer VuoListCreate_VuoLayer ( void  )

Creates a new list of VuoLayer elements.

Definition at line 154 of file VuoList_VuoLayer.cc.

◆ VuoListCreateWithCount_VuoLayer()

VuoList_VuoLayer VuoListCreateWithCount_VuoLayer ( const unsigned long  count,
const VuoLayer  value 
)

Creates a new list of count instances of value.

Use this in conjunction with VuoListGetData_VuoLayer to quickly initialize a large list.

Definition at line 161 of file VuoList_VuoLayer.cc.

◆ VuoListCreateWithValueArray_VuoLayer()

VuoList_VuoLayer VuoListCreateWithValueArray_VuoLayer ( const VuoLayer 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.

Definition at line 174 of file VuoList_VuoLayer.cc.

◆ VuoListExchangeValues_VuoLayer()

void VuoListExchangeValues_VuoLayer ( VuoList_VuoLayer  list,
const unsigned long  indexA,
const unsigned long  indexB 
)

Swaps the value at indexA with the value at indexB.

Definition at line 331 of file VuoList_VuoLayer.cc.

◆ VuoListForeach_VuoLayer()

void VuoListForeach_VuoLayer ( const VuoList_VuoLayer  list,
bool(^)(const VuoLayer value)  function 
)

Applies function to each of list's items, serially in order of index.

If function returns false, visiting will stop immediately (possibly before all items have been visited).

Changed in Vuo 2.0.0:
New.

Definition at line 242 of file VuoList_VuoLayer.cc.

◆ VuoListGetCount_VuoLayer()

unsigned long VuoListGetCount_VuoLayer ( const VuoList_VuoLayer  list)

Returns the number of elements in list.

Definition at line 566 of file VuoList_VuoLayer.cc.

◆ VuoListGetData_VuoLayer()

VuoLayer * VuoListGetData_VuoLayer ( const VuoList_VuoLayer  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.

Definition at line 232 of file VuoList_VuoLayer.cc.

◆ VuoListGetValue_VuoLayer()

VuoLayer VuoListGetValue_VuoLayer ( const VuoList_VuoLayer  list,
const unsigned long  index 
)

Returns the VuoLayer at index.

Index values start at 1. If the list has no items, returns a default value. 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_VuoLayer or VuoListForeach_VuoLayer.

Definition at line 216 of file VuoList_VuoLayer.cc.

◆ VuoListIndexToCArrayIndex()

static unsigned long VuoListIndexToCArrayIndex ( long  index,
unsigned long  listCount 
) const
inlinestatic

Converts a Vuo-style [1..n] list index into a C-style [0..n-1] list index.

If the index is less than 1, or larger than the size of the list, the returned index is clamped.

Definition at line 70 of file VuoList_VuoLayer.h.

◆ VuoListInsertValue_VuoLayer()

void VuoListInsertValue_VuoLayer ( const VuoList_VuoLayer  list,
const VuoLayer  value,
const unsigned long  index 
)

Inserts the VuoLayer 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.

Definition at line 289 of file VuoList_VuoLayer.cc.

◆ VuoListPrependValue_VuoLayer()

void VuoListPrependValue_VuoLayer ( VuoList_VuoLayer  list,
const VuoLayer  value 
)

Prepends value to list.

Definition at line 311 of file VuoList_VuoLayer.cc.

◆ VuoListRemoveAll_VuoLayer()

void VuoListRemoveAll_VuoLayer ( VuoList_VuoLayer  list)

Removes all values from list.

Definition at line 540 of file VuoList_VuoLayer.cc.

◆ VuoListRemoveFirstValue_VuoLayer()

void VuoListRemoveFirstValue_VuoLayer ( VuoList_VuoLayer  list)

Removes the first value from list.

Definition at line 512 of file VuoList_VuoLayer.cc.

◆ VuoListRemoveLastValue_VuoLayer()

void VuoListRemoveLastValue_VuoLayer ( VuoList_VuoLayer  list)

Removes the last value from list.

Definition at line 526 of file VuoList_VuoLayer.cc.

◆ VuoListRemoveValue_VuoLayer()

void VuoListRemoveValue_VuoLayer ( VuoList_VuoLayer  list,
const unsigned long  index 
)

Removes the VuoLayer 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.

Definition at line 549 of file VuoList_VuoLayer.cc.

◆ VuoListReverse_VuoLayer()

void VuoListReverse_VuoLayer ( VuoList_VuoLayer  list)

Reverses the order of the items in list.

Definition at line 435 of file VuoList_VuoLayer.cc.

◆ VuoListSetValue_VuoLayer()

void VuoListSetValue_VuoLayer ( const VuoList_VuoLayer  list,
const VuoLayer  value,
const unsigned long  index,
bool  expandListIfNeeded 
)

Changes the VuoLayer 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 elements, it is expanded to accommodate the specified index. If index is 0, the list is resized to contain 1 item set to value.

Definition at line 254 of file VuoList_VuoLayer.cc.

◆ VuoListShuffle_VuoLayer()

void VuoListShuffle_VuoLayer ( VuoList_VuoLayer  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.

Definition at line 414 of file VuoList_VuoLayer.cc.

◆ VuoListSubset_VuoLayer()

VuoList_VuoLayer VuoListSubset_VuoLayer ( VuoList_VuoLayer  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.

Definition at line 444 of file VuoList_VuoLayer.cc.