<?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="select" module="max" category="Control">
	<digest>
		Output bangs based on input matching
	</digest>
	<description>
		Selectively outputs a <m>bang</m> in response to any input which matches its arguments and will output non-matching messages out its right-most outlet.
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			Max
		</metadata>
		<metadata name="tag">
			Control
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="INLET_TYPE">
			<digest>
				Number to be Tested
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="1" type="INLET_TYPE">
			<digest>
				Set Number to Match
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<outletlist>
		<outlet id="0" type="OUTLET_TYPE">
			<digest>
				bang if Input Matches 0
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
		<outlet id="1" type="OUTLET_TYPE">
			<digest>
				Input if Input Doesn't Match
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
	</outletlist>
	<!--ARGUMENTS-->
	<objarglist>
		<objarg name="selectors" optional="1" type="anything">
			<digest>
				Outlet selectors
			</digest>
			<description>
				The arguments can be a mix of ints, floats, or symbols. The number of arguments determines the number of outlets in addition to the rightmost outlet. If there is no argument, there is only one other outlet, which is assigned the integer number <m>0</m>.
			</description>
		</objarg>
		<objarg name="inlet" optional="0" type="int">
			<digest>
				Alternate input initialization
			</digest>
			<description>
				If there is a single int argument (or if there are no arguments) a second inlet is created on the right. Numbers received in that inlet are stored in place of the argument. If there is more than one argument, or if the only argument is not an <m>int</m>, the right inlet is not created.
			</description>
		</objarg>
	</objarglist>
	<!--MESSAGES-->
	<methodlist>
		<method name="bang">
			<arglist />
			<digest>
				Output a bang on match
			</digest>
			<description>
				Performs the same function as <m>anything</m>. The <m>bang</m> message matches a 'bang' symbol in the arguments.
			</description>
		</method>
		<method name="int">
			<arglist>
				<arg name="input" optional="0" type="int" />
			</arglist>
			<digest>
				Output a bang on match
			</digest>
			<description>
				Performs the same function as <m>anything</m>.				<br />
				<br />
				Note: If an int is listed multiple times as an argument, a <m>bang</m> message will be sent out the leftmost outlet only.
			</description>
		</method>
		<method name="float">
			<arglist>
				<arg name="input" optional="0" type="float" />
			</arglist>
			<digest>
				Output a bang on match
			</digest>
			<description>
				Performs the same function as <m>anything</m>.				<br />
				<br />
				Note: If a float is listed multiple times as an argument, a <m>bang</m> message will be sent out the leftmost outlet only.
			</description>
		</method>
		<method name="list">
			<arglist>
				<arg name="ARG_NAME_0" type="list" optional="0" />
			</arglist>
			<digest>
				TEXT_HERE
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="anything">
			<arglist>
				<arg name="input" optional="0" type="list" />
			</arglist>
			<digest>
				Output a bang on match
			</digest>
			<description>
				All input will be selectively output either as a <m>bang</m> from one of its corresponding outlets if it matches the object argument(s) or as it is out the object's right-most outlet.
			</description>
		</method>
		<method name="in1">
			<arglist>
				<arg name="value" optional="0" type="int" />
			</arglist>
			<digest>
				Replace single argument
			</digest>
			<description>
				In right inlet: Replaces the value of the argument. The right inlet exists only if there is a single int argument.
			</description>
		</method>
		<method name="symbol">
			<arglist>
				<arg name="input" optional="0" type="symbol" />
			</arglist>
			<digest>
				Output a bang on match
			</digest>
			<description>
				Performs the same function as <m>anything</m>.
			</description>
		</method>
	</methodlist>
	<!--ATTRIBUTES-->
	<!--EXAMPLE-->
	<examplelist>
		<example img="select.png" caption="Arguments assign names or numbers to the outlets, and a bang is sent when the input matches them" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		<seealso name="if" />
		<seealso name="match" />
		<seealso name="route" />
		<seealso name="==" />
	</seealsolist>
	<misc name="Output">
		<entry name="bang">
			<description>
				If the number or symbol received in the left inlet is the same as one of the arguments, a <m>bang</m> is sent out the outlet that corresponds to that argument.
			</description>
		</entry>
		<entry name="anything">
			<description>
				If the number or symbol received in the left inlet does not match any of the arguments, it is passed out the rightmost outlet.
			</description>
		</entry>
	</misc>
</c74object>
