TYPE: CHOP
TITLE: Record CHOP

This CHOP takes the channels coming in the first (Position) input, converts and
records them internally, and outputs the full or partial recording as the CHOP
output. The optional second (Active) input starts or stops the recording.

During each frame that is being recorded, the Record CHOP records either the
entire time slice or a single frame. Interpolate determines how to interpolate
between single frames. The Type determines how the input values are converted.
Input values may be recorded as-is or interpreted as a speed.

If Record is set to Auto Range, the Active input goes on while Houdini is
playing, then any existing storage array is cleared, and the the Position
channels are recorded internally until Active goes off. To produce a single-
frame recording, hold down the Ctrl key during Auto Range recording.

The Mouse and Keyboard CHOPs are often attached to the Position and Active
inputs respectively of the Record CHOP to perform the recording of channels
from mouse movements, enabled by pressing a keyboard key.

There are no local variables.

Parameters
Control
    Record         - When and how much to record.
        On              - Always records when playing forward.
        Add             - Add the new input to already-recorded channels.
        Auto Range      - Creates an interval based on Active on/off.
    Record Input   - Record can sample the time slice or a single frame.
    Interpolate    - How to compute missed input samples using interpolation.
    Type               - The interpretation of the Position input.
        Raw             - Output values set to the input values as-is.
        Raw Speed       - Input changes are treated as a speed.
			 An input of 0.5 will cause the output to increase
			 by 0.5 per time unit. 
        Position Offset - The input changes (times Gain A/B) are added to
			 the output values. Only done when Active is on.
        Speed           - Input changes (times Gain A/B) are treated as a
			 speed change. When Active is off, speed is 0.
			 Output is current value + speed * timestep.
        Speed & Hold    - Like Speed except speed is held when Active is off.
    Record Output   - Record can output single frames, a time slice, or
		      the full animation range.  
Initial
    Position Offset - Initial values to use for position (output of CHOP).
    Speed           - Initial values to use for speed (for Speed Types).
    Initialize      - Command menu to set the internal state to
		      be the initial values above.
    Read            - Command menu to read the current internal
		      state into the initial values above.
Limit
    Channels Per Limit - Number of consecutive channels to use  /chanperlim
			 Limit A before switching to Limit B.
    Limit A/B          - Type of limiting function for sets A and B.
        Clamp   - Clamp at the minimum/maximum value and hold.
	Loop    - At limit, continue channel at other end of min/max range.
	Zig Zag - At limit, bounce channel back within min/max range.
    Minimum A/B        - The minimum value of the channel.     /mina /minb
    Maximum A/B        - The maximum value of the channel.     /maxa /maxb
    Gain A/B           - The Position input is multiplied      /gaina
			 by this gain factor.                  /gainb

See also: Audio In(audioin), Keyboard, Mouse
