<?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. Rather, use the _ref.xml files found in the 'edits' folder.-->
<c74object name="mc.swing~" module="" category="Multichannel">
	<digest>
		Subdivide a phasor into two unequal phasors (multichannel)
	</digest>
	<description>
		The <o>swing~</o> object outputs two phasor signals in the space of one input phasor, with the ability to adjust the &quot;swing&quot; or proportion of the time of the input phasor given to the first of the two output phasors. If the swing is set to 0.5, both the first and second output phasors are equal. But if the swing is set to 0.75, the first phasor lasts for three fourths of the input and the second phasor lasts for one fourth of the time.
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			MSP
		</metadata>
		<metadata name="tag">
			MSP Functions
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="signal">
			<digest>
				Phasor Input
			</digest>
			<description>
				Drive the <o>swing~</o> object with a signal that ramps from 0 to 1.
			</description>
		</inlet>
		<inlet id="1" type="signal">
			<digest>
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<outletlist>
		<outlet id="0" type="signal">
			<digest>
				Output
			</digest>
			<description>
				The output phasor signals that subdivide the input phasor unequally.
			</description>
		</outlet>
		<outlet id="1" type="signal">
			<digest>
				Step Number
			</digest>
			<description>
				<o>swing~</o> outputs a constant 0 signal when the first step begins and 1 signal when the second step begins.
			</description>
		</outlet>
		<outlet id="2" type="int">
			<digest>
				Step Number
			</digest>
			<description>
				<o>swing~</o> outputs a 0 when the first step begins and 1 when the second step begins. Note that these outputs are not synchronized with the audio signal.
			</description>
		</outlet>
	</outletlist>
	<!--ARGUMENTS-->
	<objarglist>
		<objarg id="0" name="swing" type="float" optional="1">
			<digest>
				Initial Swing Value
			</digest>
			<description>
				The initial proportion of the total time taken up by the first phasor. If no argument is supplied the default is 0.5.
			</description>
		</objarg>
	</objarglist>
	<!--MESSAGES-->
	<methodlist>
		<method name="int">
			<arglist>
				<arg name="ARG_NAME_0" type="int" optional="0" />
			</arglist>
			<digest>
				Swing Proportion
			</digest>
			<description>
				Converted to <m>float</m>.
			</description>
		</method>
		<method name="float">
			<arglist>
				<arg name="ARG_NAME_0" type="float" optional="0" />
			</arglist>
			<digest>
				Swing Proportion
			</digest>
			<description>
				Sets the swing proportion between 0.15 and 0.85
			</description>
		</method>
		<method name="signal">
			<arglist />
			<digest>
				Phasor Input
			</digest>
			<description>
				Drive the <o>swing~</o> object with a signal that ramps from 0 to 1.
			</description>
		</method>
	</methodlist>
	<!--ATTRIBUTES-->
	<attributelist>
		<attribute name="swing" get="1" set="1" type="float" size="1">
			<digest>
				Swing (0.15 - 0.85)
			</digest>
			<description>
				Sets the swing proportion between 0.15 and 0.85
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Swing (0.15 - 0.85)" />
			</attributelist>
		</attribute>
		<attribute name="syncupdate" get="1" set="1" type="int" size="1">
			<digest>
				Sync Updates to Resets
			</digest>
			<description>
				If <at>syncupdate</at> is enabled, changes to the swing proportion will only take effect when either the input or output resets.
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Sync Updates to Resets" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="onoff" />
			</attributelist>
		</attribute>
	</attributelist>
	<!--EXAMPLE-->
	<examplelist>
		<example caption="" img="" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		<seealso name="phasor~" />
		<seealso name="kink~" />
		<seealso name="line~" />
		<seealso name="mc.snowphasor~" />
		<seealso name="subdiv~" />
	</seealsolist>
	<mcwrapper>
		<mcwrappermethod name="applymessages" />
		<mcwrappermethod name="applynvalues" />
		<mcwrappermethod name="applyvalues" />
		<mcwrappermethod name="decide" />
		<mcwrappermethod name="deviate" />
		<mcwrappermethod name="ease.in_back" />
		<mcwrappermethod name="ease.in_bounce" />
		<mcwrappermethod name="ease.in_circular" />
		<mcwrappermethod name="ease.in_cubic" />
		<mcwrappermethod name="ease.in_elastic" />
		<mcwrappermethod name="ease.in_exponential" />
		<mcwrappermethod name="ease.in_out_back" />
		<mcwrappermethod name="ease.in_out_bounce" />
		<mcwrappermethod name="ease.in_out_circular" />
		<mcwrappermethod name="ease.in_out_cubic" />
		<mcwrappermethod name="ease.in_out_elastic" />
		<mcwrappermethod name="ease.in_out_exponential" />
		<mcwrappermethod name="ease.in_out_quadratic" />
		<mcwrappermethod name="ease.in_out_quartic" />
		<mcwrappermethod name="ease.in_out_quintic" />
		<mcwrappermethod name="ease.in_out_sine" />
		<mcwrappermethod name="ease.in_quadratic" />
		<mcwrappermethod name="ease.in_quartic" />
		<mcwrappermethod name="ease.in_quintic" />
		<mcwrappermethod name="ease.in_sine" />
		<mcwrappermethod name="ease.linear" />
		<mcwrappermethod name="ease.out_back" />
		<mcwrappermethod name="ease.out_bounce" />
		<mcwrappermethod name="ease.out_circular" />
		<mcwrappermethod name="ease.out_cubic" />
		<mcwrappermethod name="ease.out_elastic" />
		<mcwrappermethod name="ease.out_quadratic" />
		<mcwrappermethod name="ease.out_quartic" />
		<mcwrappermethod name="ease.out_quintic" />
		<mcwrappermethod name="ease.out_sine" />
		<mcwrappermethod name="exponential" />
		<mcwrappermethod name="generate" />
		<mcwrappermethod name="harmonic" />
		<mcwrappermethod name="increment" />
		<mcwrappermethod name="randomrange" />
		<mcwrappermethod name="replicatenvalues" />
		<mcwrappermethod name="replicatevalues" />
		<mcwrappermethod name="scaledexponential" />
		<mcwrappermethod name="setvalue" />
		<mcwrappermethod name="setvaluerange" />
		<mcwrappermethod name="smoothstep" />
		<mcwrappermethod name="spread" />
		<mcwrappermethod name="spreadexclusive" />
		<mcwrappermethod name="spreadincludefirst" />
		<mcwrappermethod name="spreadincludesecond" />
		<mcwrappermethod name="spreadinclusive" />
		<mcwrappermethod name="subharmonic" />
		<mcwrapperattr name="busymapname" />
		<mcwrapperattr name="bz" />
		<mcwrapperattr name="bzname" />
		<mcwrapperattr name="chans" />
		<mcwrapperattr name="fun" />
		<mcwrapperattr name="initialvalues" />
		<mcwrapperattr name="op" />
		<mcwrapperattr name="target" />
		<mcwrapperattr name="usebusymap" />
		<mcwrapperattr name="values" />
		<mcwrapperattr name="voiceprob" />
		<mcwrapperattr name="zero" />
	</mcwrapper>
</c74object>
