<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet href="./_c74_ref.xsl" type="text/xsl"?>
<!--This is an automatically generated file. DO NOT EDIT THIS FILE DIRECTLY.-->
<c74object module="rnbo" kind="rnboobject" name="curve~" category="Envelopes">
<!--METADATA-->
<metadatalist>
<metadata name="author">Cycling '74</metadata>
<metadata name="tag">RNBO</metadata>
<metadata name="tag">RNBO Functions</metadata>
<metadata name="tag">RNBO Envelopes</metadata>
</metadatalist>
<digest>Exponential ramp generator</digest>
<description><p>
The curve~ object to produces a signal that goes from an initial value to a destination value over a specified time. Similar to the line~ object, it produces non-linear ramps using a piecewise approximation of an exponential function.
</p></description>
<!--ARGUMENTS-->
<objarglist>
<objarg name="value" optional="1" type="number">
<digest>Initial value</digest>
<description><p>
The first argument is the intitial value where the ramp starts. If a list is sent to this inlet, the first list element and/or argument represents the initial value.
</p></description>
</objarg>
<objarg name="time" optional="1" type="number">
<digest>Ramp time</digest>
<description><p>
The second argument specifies the duration of time in milliseconds to reach the destination value. If a list is sent to this inlet, the second list element and/or argument represents the duration of time. To keep the last received ramp, see the 'keepramp' attribute.
</p></description>
</objarg>
<objarg name="curve" optional="1" type="number">
<digest>Curve amount (-1.0 to 1.0)</digest>
<description><p>
The third argument sets the initial curve parameter. The default value for the curve parameter is 0.
</p></description>
</objarg>
</objarglist>
<!--OPTIONS-->
<rnbooptionlist>
<option name="value" size="1" type="number">
<digest>Initial value</digest>
<attributelist>
<attribute name="default" type="number" value="0"></attribute>
</attributelist>
<description><p>
The first argument is the intitial value where the ramp starts. If a list is sent to this inlet, the first list element and/or argument represents the initial value.
</p></description>
</option>
</rnbooptionlist>
<!--ATTRIBUTES-->
<rnboattributelist>
<attribute name="curve" size="1" type="number">
<digest>Curve amount (-1.0 to 1.0)</digest>
<description><p>
The third argument sets the initial curve parameter. The default value for the curve parameter is 0.
</p></description>
</attribute>
<attribute name="dest" size="1" type="list">
<digest>Destination value </digest>
<description><p>
In the left inlet, The number is the target value, to be arrived at in the time specified by the number in the middle inlet, ramp's time. If no time has been specified since the last target value, the time is considered to be 0 and the output signal jumps immediately to the target value. To keep the last received ramp, see the 'keepramp' attribute.
</p></description>
</attribute>
<attribute name="keepramp" size="1" type="bool">
<digest>Keep last ramp</digest>
<attributelist>
<attribute name="default" type="bool" value="false"></attribute>
</attributelist>
<description><p>
When enabled, the last received ramp time will be kept and used when a single value is received in the left inlet.
</p></description>
</attribute>
<attribute name="time" size="1" type="number">
<digest>Ramp time</digest>
<description><p>
The second argument specifies the duration of time in milliseconds to reach the destination value. If a list is sent to this inlet, the second list element and/or argument represents the duration of time. To keep the last received ramp, see the 'keepramp' attribute.
</p></description>
</attribute>
</rnboattributelist>
<!--INLETS-->
<rnboinletlist>
<inlet id="inlet_dest" name="dest" type="list">
<digest>Destination value </digest>
<description><p>
In the left inlet, The number is the target value, to be arrived at in the time specified by the number in the middle inlet, ramp's time. If no time has been specified since the last target value, the time is considered to be 0 and the output signal jumps immediately to the target value. To keep the last received ramp, see the 'keepramp' attribute.
</p></description>
</inlet>
<inlet id="inlet_time" name="time" type="number">
<digest>Ramp time</digest>
<description><p>
The second argument specifies the duration of time in milliseconds to reach the destination value. If a list is sent to this inlet, the second list element and/or argument represents the duration of time. To keep the last received ramp, see the 'keepramp' attribute.
</p></description>
</inlet>
<inlet id="inlet_curve" name="curve" type="number">
<digest>Curve amount (-1.0 to 1.0)</digest>
<description><p>
The third argument sets the initial curve parameter. The default value for the curve parameter is 0.
</p></description>
</inlet>
</rnboinletlist>
<!--OUTLETS-->
<rnbooutletlist>
<outlet id="outlet_out" name="out" type="signal">
<digest>Ramp out</digest>
<description><p>
The current target value, or an exponential curve moving toward the target value according to the most recently received target value, transition time, and curve parameter.
</p></description>
</outlet>
<outlet id="outlet_target" name="target" type="bang">
<digest>Bang when ramp has finished</digest>
<description><p>
When curve~ has finished generating all of its ramps, a bang is sent out.
</p></description>
</outlet>
</rnbooutletlist>
<!--SEE ALSO-->
<seealsolist>
<seealso name="curve~" type="refpage" module="MSP"></seealso>
<seealso name="rnbo_line~" type="rnborefpage" module="RNBO" display="line~"></seealso>
<seealso name="rnbo_smoothstep~" type="rnborefpage" module="RNBO" display="smoothstep~"></seealso>
<seealso name="rnbo_adsr~" type="rnborefpage" module="RNBO" display="adsr~"></seealso>
<seealso name="rnbo_transport" type="rnborefpage" module="RNBO" display="transport"></seealso>
</seealsolist>
</c74object>