<?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="histo" module="max" category="Data">
	<digest>
		Create a histogram of numbers received
	</digest>
	<description>
		Records and outputs histogram data of the numbers it receives.
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			Max
		</metadata>
		<metadata name="tag">
			Data
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="INLET_TYPE">
			<digest>
				Numbers to Keep Track Of (and 'clear' Message)
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="1" type="INLET_TYPE">
			<digest>
				How Many of a Number
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<outletlist>
		<outlet id="0" type="OUTLET_TYPE">
			<digest>
				Number Out
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
		<outlet id="1" type="OUTLET_TYPE">
			<digest>
				Quantity of a Given Number
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
	</outletlist>
	<!--ARGUMENTS-->
	<objarglist>
		<objarg name="size" optional="1" type="int">
			<digest>
				Histogram size
			</digest>
			<description>
				<o>histo</o> takes an optional argument to set the size of the histogram. The default size is 128 (0-127).
			</description>
		</objarg>
	</objarglist>
	<!--MESSAGES-->
	<methodlist>
		<method name="bang">
			<arglist />
			<digest>
				Output count of last value received
			</digest>
			<description>
				Using the number most recently received in the left inlet, <o>histo</o> reports out the right outlet how many times that number has been received, and sends the number itself out the left outlet. If no number has been previously received in the left inlet, <m>0</m> is sent out both outlets.
			</description>
		</method>
		<method name="int">
			<arglist>
				<arg name="count" optional="0" type="int" />
			</arglist>
			<digest>
				Input data and cause output
			</digest>
			<description>
				In left inlet: <o>histo</o> keeps count of how many times it has received a number between 0 and 127 in the left inlet. When a number is received, <o>histo</o> includes it in the count, sends the number of times that number has been received out the right outlet, and passes the number itself out the left outlet. Numbers outside the range 0-127 are ignored.
			</description>
		</method>
		<method name="clear">
			<arglist />
			<digest>
				Clear histogram counts
			</digest>
			<description>
				Erases the memory of <o>histo</o>, to begin a new histogram.
			</description>
		</method>
		<method name="in1">
			<arglist>
				<arg name="count" optional="0" type="int" />
			</arglist>
			<digest>
				Query a value count
			</digest>
			<description>
				In right inlet: Has the same effect as a number in the left inlet, except that the number is not counted by <o>histo</o>.
			</description>
		</method>
	</methodlist>
	<!--ATTRIBUTES-->
	<!--EXAMPLE-->
	<examplelist>
		<example img="histo.png" caption="Store a histogram of the numbers received display it in a table" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		<seealso name="anal" />
		<seealso name="itable" />
		<seealso name="prob" />
		<seealso name="table" />
	</seealsolist>
	<misc name="Output">
		<entry name="int">
			<description>
				Out left outlet: The number received in the inlet.
				<br />
				<br />
				Out right outlet: The count of the number of times that number has been received.
			</description>
		</entry>
	</misc>
</c74object>
