value derived from ygNode Example Source Header

Description: a variable size array of values

notes:
Category: Math
Author: Alex Hill
11/01/01
Revision: 01/15/03 Alex Hill - added event message

    Messages
reference [string] make this node an instance of another node
set float, [integer] set the value of a single array element
value float, [integer] set the value of a single array element
values multiple floats set the values of all array elements
size integer set the size of the array
delta float, [integer] set the value of a single delta element
deltas multiple floats set the values of all delta array elements
minimum float, [integer] set the value of single minimum clamp
minimums multiple floats set the values of all minimum array elements
maximum float, [integer] set the value of single maximum clamp
maximums multiple floats set the values of all maximum array elements
decrement [integer] decrement all or a single element by delta
increment [integer] increment all or a single element by delta
integer [bool] set if the value should be rounded to the nearest integer
event string, multiple string generate an event with associated arguments
    Events
msg.stringArg(0) value, value[index] add $value and $valueX arguments to each event
msg.stringArg(0) value, value[index], msg.stringArg(i) add all $value arguments to each event plus any arguments
changed value, value[index] generate changed event with $value, $valueX where X=index
    Comments

constructor value

destructor ~value

method reset

1 set size to 1
2 initialize value to 0.0
3 set delta size to 1
4 initialize delta value to 1.0
5 set minimums size to 0
6 set maximums size to 0
7 set integer flag to false

method message

1 make this node an instance of another node
2 else, if referenced, send the message to the reference node
3 set the value of a single array element
4 set the values of all array elements
5 set the size of the array
6 set the value of a single delta element
7 set the values of all delta array elements
8 set the value of single minimum clamp
9 set the values of all minimum array elements
10 set the value of single maximum clamp
11 set the values of all maximum array elements
12 decrement all or a single element by delta
13 increment all or a single element by delta
14 set if the value should be rounded to the nearest integer
15 generate an event with associated arguments
15.0.1 for each value in the array
15.0.1.1 add $value and $valueX arguments to each event
15.0.1.1 add all $value arguments to each event plus any arguments

method setValueSize

method setSize

1 if size has changed
1.0.1 if old size is 0 then fill with initial values
1.0.2 else, if new size is larger then pad with initial values

method isChanged

method clampValues

1 for each value in the array
1.1 if exceeding a limit then clamp

method app

1 clamp values
2 if changed then generate event
2.1 for each value in the array
2.2 for each value in the array
2.3 generate changed event with $value, $valueX where X=index

method appTraverse

1 start timing
2 call appTraverse recursively on all children
3 execute app method
4 end timing

method getValue

method getLastValue

method setValue

method getSize

method createDebugNode