<?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="fbinshift~" module="msp" category="MSP FFT">
	<digest>
		Frequency domain frequency shifter for pfft~
	</digest>
	<description>
		The <o>fbinshift~</o> object implements a frequency-domain frequency shifter that can be used inside a patch loaded by a <o>pfft~</o> object.
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			MSP
		</metadata>
		<metadata name="tag">
			MSP FFT
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="signal">
			<digest>
				real/x input
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="1" type="signal">
			<digest>
				imaginary/y input
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="2" type="double">
			<digest>
				Amount of Frequency Shift (Hz)
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<outletlist>
		<outlet id="0" type="signal">
			<digest>
				bin-shifted real/x output
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
		<outlet id="1" type="signal">
			<digest>
				bin-shifted imaginary/y output
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
	</outletlist>
	<!--ARGUMENTS-->
	<objarglist>
		<objarg name="frequency-shift" optional="1" units="hz" type="float">
			<digest>
				Frequency shift
			</digest>
			<description>
				A numerical argument will be used as the frequency shift in Hertz. The default is zero.
			</description>
		</objarg>
		<objarg name="frequency-shift" optional="0" units="hz" type="int">
			<digest>
				Frequency shift
			</digest>
			<description>
				Integer inputs are converted to floating-point values and used as the frequency shift in Hertz. The default is zero.
			</description>
		</objarg>
	</objarglist>
	<!--MESSAGES-->
	<methodlist>
		<method name="ft2">
			<arglist>
				<arg name="frequency-shift" optional="0" units="hz" type="float" />
			</arglist>
			<digest>
				Set amount of frequency shift
			</digest>
			<description>
				In rightmost inlet: a float in the right inlet will be used as a frequency amount in Hertz by which the complex (real + imaginary) input signal will be shifted.
			</description>
		</method>
		<method name="signal">
			<arglist />
			<digest>
				Function depends on inlet
			</digest>
			<description>
				In left inlet: The signal present at the left inlet is the real part of a frequency-domain signal coming from a <o>fftin~</o> object inside a <o>pfft~</o>.				<br />
				<br />
				In middle inlet: The signal input to the middle inlet is the imaginary part of a frequency-domain signal coming from a <o>fftin~</o> object inside a <o>pfft~</o>. Both real and imaginary inputs must be connected for the <o>fbinshift~</o> to work.
			</description>
		</method>
	</methodlist>
	<!--ATTRIBUTES-->
	<!--EXAMPLE-->
	<examplelist>
		<example img="fbinshift~.png" caption="Using fbinshift~ inside a pfft~ subpatch" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		<seealso name="freqshift~" />
		<seealso name="gizmo~" />
		<seealso name="hilbert~" />
	</seealsolist>
	<discussion>
		The <o>fbinshift~</o> object works by shifting the frequency bins of an FFT'd signal (hence its name - a shortened form of &quot;frequency-bin shifter&quot;). All the frequencies of the complex input signal are shifted by the Hertz value speified. Positive Hertz values shift upward, whereas negative values shift downward. The <o>fbinshift~</o> object must be used inside a <o>pfft~</o>; outside a <o>pfft~</o> it does nothing.
	</discussion>
	<misc name="Output">
		<entry name="signal">
			<description>
				The output is the frequency shifted complex signal. The left outlet is the real component, and the right outlet is the imaginary component. These may be connected to the real and imaginary inputs of a <o>fftout~</o> object inside a <o>pfft~</o>.
			</description>
		</entry>
	</misc>
</c74object>
