<?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="jit.gl.pix" module="jit" category="Jitter Code Generation">
	<digest>
		Generates pixel processing shaders from a patcher
	</digest>
	<description>
		The <o>jit.gl.pix</o> object generates new pixel processing shaders from a patcher. <o>jit.gl.pix</o> is essentially a <o>jit.gl.slab</o> object whose shader files are generated from <o>jit.expr</o>-like expressions that can be in either text or patcher form.
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			Jitter
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="INLET_TYPE">
			<digest>
				messages to this 3d object
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="1" type="INLET_TYPE">
			<digest>
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<outletlist>
		<outlet id="0" type="OUTLET_TYPE">
			<digest>
				matrix output if enabled
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
		<outlet id="1" type="OUTLET_TYPE">
			<digest>
				dumpout
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
	</outletlist>
	<!--OB3D-->
	<OB3D />
	<!--MESSAGES-->
	<methodlist>
		<method name="anything">
			<arglist />
			<digest>
				TEXT_HERE
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="(drag)">
			<digest>
				Drag and drop a .genjit Gen patcher
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="(mouse)">
			<digest>
				Open the Gen patcher
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="compile">
			<arglist />
			<digest>
				Compile the Gen patcher
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="exportcode">
			<arglist>
				<arg name="target" optional="1" type="symbol" />
			</arglist>
			<digest>
				Export gen patcher as shader code.
			</digest>
			<description>
				Export a gen patcher as shader code.  With no arguments, jit.gl.pix will export a standard Jitter JXS shader file with GLSL code.  The optional arguments can be either 'jxs' or 'webjxs'.  In the 'webjxs' case, jit.gl.pix will export shader code appropriate for WebGL.
			</description>
		</method>
		<method name="getparamdefault">
			<arglist />
			<digest>
				Sends the default data values for the indicated shader parameter for the internal <o>jit.gl.shader</o> object out the right-most outlet.
			</digest>
			<description>
				Sends the default data values for the indicated shader parameter for the internal <o>jit.gl.shader</o> object out the right-most outlet.
			</description>
		</method>
		<method name="getparamdescription">
			<arglist />
			<digest>
				Get a parameter description
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="getparamlist">
			<arglist />
			<digest>
				Sends the names of all the internal <o>jit.gl.shader</o> object shader parameters out the right-most outlet.
			</digest>
			<description>
				Sends the names of all the internal <o>jit.gl.shader</o> object shader parameters out the right-most outlet.
			</description>
		</method>
		<method name="getparamtype">
			<arglist />
			<digest>
				Sends the name of the datatype for the indicated shader parameter for the internal <o>jit.gl.shader</o> object out the right-most outlet.
			</digest>
			<description>
				Sends the name of the datatype for the indicated shader parameter for the internal <o>jit.gl.shader</o> object out the right-most outlet.
			</description>
		</method>
		<method name="getparamval">
			<arglist />
			<digest>
				Sends the data values for the indicated shader parameter for the internal <o>jit.gl.shader</o> object out the right-most outlet.
			</digest>
			<description>
				Sends the data values for the indicated shader parameter for the internal <o>jit.gl.shader</o> object out the right-most outlet.
			</description>
		</method>
		<method name="jit.gl.pix">
			<arglist />
			<digest>
				TEXT_HERE
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="open">
			<arglist />
			<digest>
				Open the Gen patcher
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="param">
			<arglist />
			<digest>
				Sets the given shader parameter with the given atom values as defined in a JXS (Jitter shader)
			</digest>
			<description>
				Sets the given shader parameter with the given atom values as defined in a JXS (Jitter shader) file.
			</description>
		</method>
		<method name="sendinput">
			<arglist />
			<digest>
				Sends the input <o>jit.gl.texture</o> object attached to the active inlet the corresponding message.
			</digest>
			<description>
				Sends the input <o>jit.gl.texture</o> object attached to the active inlet the corresponding message. An optional integer as a first argument lets one send the message to a specific input (zero based, left to right).
			</description>
		</method>
		<method name="sendoutput">
			<arglist />
			<digest>
				Sends the output <o>jit.gl.texture</o> object the corresponding message.
			</digest>
			<description>
				Sends the output <o>jit.gl.texture</o> object the corresponding message.
			</description>
		</method>
		<method name="sendshader">
			<arglist />
			<digest>
				Sends the internal <o>jit.gl.shader</o> object the corresponding message.
			</digest>
			<description>
				Sends the internal <o>jit.gl.shader</o> object the corresponding message.
			</description>
		</method>
		<method name="read">
			<arglist />
			<digest>
				TEXT_HERE
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="wclose">
			<arglist />
			<digest>
				Close the Gen patcher
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
	</methodlist>
	<jittermethodlist>
		<jittermethod name="bang" />
		<jittermethod name="anim_grow" />
		<jittermethod name="anim_move" />
		<jittermethod name="anim_reset" />
		<jittermethod name="anim_turn" />
		<jittermethod name="draw" />
		<jittermethod name="drawimmediate" />
		<jittermethod name="drawraw" />
		<jittermethod name="exportattrs" />
		<jittermethod name="exportsummary" />
		<jittermethod name="getattributes" />
		<jittermethod name="getstate" />
		<jittermethod name="jit_gl_texture" />
		<jittermethod name="jit_matrix" />
		<jittermethod name="importattrs" />
		<jittermethod name="summary" />
		<jittermethod name="update_node" />
	</jittermethodlist>
	<!--ATTRIBUTES-->
	<attributelist>
		<attribute name="activeinput" get="1" set="1" type="int" size="1">
			<digest>
				Input number used for <m>jit_matrix</m> method (default = 0)
			</digest>
			<description>
				Input number used for <m>jit_matrix</m> method (default = 0) Useful for multiple input Image Units used from Java or JavaScript.
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Active Input" />
			</attributelist>
		</attribute>
		<attribute name="adapt" get="1" set="1" type="int" size="1">
			<digest>
				Enables or disables adapting and resizing to input source dimensions (default = 1).
			</digest>
			<description>
				Enables or disables adapting and resizing to input source dimensions (default = 1).
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="default" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Adapt" />
			</attributelist>
		</attribute>
		<attribute name="colormode" get="1" set="1" type="symbol" size="1">
			<digest>
				The colorspace mode to use for each input textures (default = auto)
			</digest>
			<description>
				The colorspace mode to use for each input textures (default = auto). Supported modes are:
				<br />
				auto
				<br />
				luminance
				<br />
				intensity
				<br />
				depth
				<br />
				lumalpha
				<br />
				rgb
				<br />
				argb
				<br />
				uyvy
				<br />
			</description>
			<attributelist>
				<attribute name="enumvals" get="1" set="1" type="atom" size="2">
					<enumlist>
						<enum name="argb">
							<digest>
								TEXT_HERE
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="uyvy">
							<digest>
								TEXT_HERE
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
					</enumlist>
				</attribute>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Colormode" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="enum" />
			</attributelist>
		</attribute>
		<attribute name="depth" get="1" set="1" type="float" size="1">
			<digest>
				The depth or z-offset for the slab geometry.
			</digest>
			<description>
				The depth or z-offset for the slab geometry. (default = 0.0)
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Depth" />
			</attributelist>
		</attribute>
		<attribute name="dim" get="1" set="1" type="int" size="2">
			<digest>
				The dimensions of the output <o>jit.gl.texture</o> object when adapt is disabled (default = 720 480)
			</digest>
			<description>
				The dimensions of the output <o>jit.gl.texture</o> object when adapt is disabled (default = 720 480)
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Dim" />
			</attributelist>
		</attribute>
		<attribute name="dimscale" get="1" set="1" type="float" size="2">
			<digest>
				The dimension scaling factors of the output <o>jit.gl.texture</o> object when adapt is enabled (default = 1. 1.).
			</digest>
			<description>
				The dimension scaling factors of the output <o>jit.gl.texture</o> object when adapt is enabled (default = 1. 1.). This is useful for upsampling or downsampling shaders (such as uyvy conversion) which can adapt with the following logic:
				<br />
				output.dim[0] = input.dim[0]*dimscale[0];
				<br />
				output.dim[1] = input.dim[1]*dimscale[1];
				<br />
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Dim Scale" />
			</attributelist>
		</attribute>
		<attribute name="dirty" get="1" set="0" type="int" size="1">
			<digest>
				Gen patcher dirty flag
			</digest>
			<description>
				TEXT_HERE
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Dirty" />
			</attributelist>
		</attribute>
		<attribute name="displaylist" get="1" set="1" type="int" size="1">
			<digest>
				Cache in displaylist flag (default = 0)
			</digest>
			<description>
				Cache in displaylist flag (default = 0) This feature may be used to speed up rendering time by creating and storing a list of gl drawing commands on the graphics card. This will have no effect if <at>matrixoutput</at> turned on.
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Displaylist" />
			</attributelist>
		</attribute>
		<attribute name="edges" get="1" set="1" type="int" size="4">
			<digest>
				Flags to enable or disable rendering each edge (only valid when shape == edges)
			</digest>
			<description>
				Flags to enable or disable rendering each edge (only valid when shape == edges) (default = 1 1 1 1)/
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Edges" />
			</attributelist>
		</attribute>
		<attribute name="exportfolder" get="1" set="1" type="symbol" size="1">
			<digest>
				Folder to export into
			</digest>
			<description>
				Sets the folder to export gen patchers into.
			</description>
			<attributelist>
				<attribute name="category" get="1" set="1" type="symbol" size="1" value="Export" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Folder to export into" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="filefolder" />
			</attributelist>
		</attribute>
		<attribute name="file" get="1" set="1" type="symbol" size="1">
			<digest>
				File
			</digest>
			<description>
				TEXT_HERE
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="File" />
			</attributelist>
		</attribute>
		<attribute name="gen" get="1" set="1" type="symbol" size="1">
			<digest>
				The name of the gen patcher to use.
			</digest>
			<description>
				The name of the gen patcher to use.
			</description>
			<attributelist>
				<attribute name="default" get="1" set="1" type="symbol" size="1" value="" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Gen" />
			</attributelist>
		</attribute>
		<attribute name="inputs" get="1" set="1" type="int" size="1">
			<digest>
				Input count (default = 2)
			</digest>
			<description>
				Input count (default = 2)
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Inputs" />
			</attributelist>
		</attribute>
		<attribute name="out_name" get="1" set="0" type="symbol" size="1">
			<digest>
				Returns the name of the internal <o>jit.gl.texture</o> object.
			</digest>
			<description>
				Returns the name of the internal <o>jit.gl.texture</o> object.
			</description>
			<attributelist />
		</attribute>
		<attribute name="outputs" get="1" set="1" type="int" size="1">
			<digest>
				Outputs
			</digest>
			<description>
				TEXT_HERE
			</description>
			<attributelist>
				<attribute name="introduced" get="1" set="1" type="symbol" size="1" value="7.0.0" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Outputs" />
			</attributelist>
		</attribute>
		<attribute name="rect" get="1" set="1" type="float" size="4">
			<digest>
				The extent or rectangular coordinates bounding the slab geometry (default = 0 0 1 1)/
			</digest>
			<description>
				The extent or rectangular coordinates bounding the slab geometry (default = 0 0 1 1)/
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Rect" />
			</attributelist>
		</attribute>
		<attribute name="rectangle" get="1" set="1" type="int" size="1">
			<digest>
				Enable texture rectangle mode (default = 1)
			</digest>
			<description>
				Enable texture rectangle mode on internal texture objects(default = 1). When enabled the internal GL texture is treated as a rectangular texture, and must be referenced using sampler2DRect and sampled using texture2DRect when sampled from a GLSL shader. When disabled the texture dimensions are upsampled to the nearest power of two value, and must be referenced and sampled using sampler2D and texture2D. Certain texture attributes and GLSL effects require rectangle mode disabled.
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Rectangle" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="onoff" />
			</attributelist>
		</attribute>
		<attribute name="thru" get="1" set="1" type="int" size="1">
			<digest>
				Thru mode flag (default = 1)
			</digest>
			<description>
				Thru mode flag (default = 1) When the flag is set, a matrix is output when another one is received.
			</description>
		</attribute>
		<attribute name="shape" get="1" set="1" type="symbol" size="1">
			<digest>
				The shape or geometry to render (default = cubes)
			</digest>
			<description>
				The shape or geometry to render (default = cubes) Supported modes are:
				<br />
				quad
				<br />
				grid
				<br />
				edges
				<br />
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Shape" />
			</attributelist>
		</attribute>
		<attribute name="subdiv" get="1" set="1" type="int" size="2">
			<digest>
				The number of subdivisions to use for generating grid based geometry (only valid when shape == grid)
			</digest>
			<description>
				The number of subdivisions to use for generating grid based geometry (only valid when shape == grid) (default = 1 1)
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Subdiv" />
			</attributelist>
		</attribute>
		<attribute name="t" get="1" set="1" type="symbol" size="1">
			<digest>
				Gen patcher title
			</digest>
			<description>
				TEXT_HERE
			</description>
		</attribute>
		<attribute name="texrect" get="1" set="1" type="float" size="128">
			<digest>
				The extent or rectangular coordinates bounding the texture coordinates for the slab geometry (default = 0 0 1 1)/
			</digest>
			<description>
				The extent or rectangular coordinates bounding the texture coordinates for the slab geometry (default = 0 0 1 1)/
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Tex Rect" />
			</attributelist>
		</attribute>
		<attribute name="title" get="1" set="1" type="symbol" size="1">
			<digest>
				Gen patcher title
			</digest>
			<description>
				TEXT_HERE
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Title" />
			</attributelist>
		</attribute>
		<attribute name="type" get="1" set="1" type="symbol" size="1">
			<digest>
				Output texture data type
			</digest>
			<description>
				The output texture data type (default = auto). When type is <ar>auto</ar> the type is set by the input texture or matrix type.
			</description>
			<attributelist>
				<attribute name="enumvals" get="1" set="1" type="atom" size="7">
					<enumlist>
						<enum name="auto">
							<digest>
								Adapt to input data type
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="char">
							<digest>
								8bit unsigned byte
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="long">
							<digest>
								32bit integer
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="half">
							<digest>
								16bit float
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="float">
							<digest>
								32bit float
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="float16">
							<digest>
								16bit float
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="float32">
							<digest>
								32bit float
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
					</enumlist>
				</attribute>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Type" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="enum" />
			</attributelist>
		</attribute>
		<attribute name="wrap" get="1" set="1" type="int" size="4">
			<digest>
				Flags to enable or disable wrapping along each edge (only valid when shape == edges)
			</digest>
			<description>
				Flags to enable or disable wrapping along each edge (only valid when shape == edges) (default = 0 0 0 0)
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Wrap" />
			</attributelist>
		</attribute>
	</attributelist>
	<jitterattributelist>
		<jitterattribute name="anchor" />
		<jitterattribute name="anim" />
		<jitterattribute name="animmode" />
		<jitterattribute name="antialias" />
		<jitterattribute name="automatic" />
		<jitterattribute name="aux_color" />
		<jitterattribute name="axes" />
		<jitterattribute name="blend" />
		<jitterattribute name="blend_enable" />
		<jitterattribute name="blend_mode" />
		<jitterattribute name="capture" />
		<jitterattribute name="color" />
		<jitterattribute name="depth_clear" />
		<jitterattribute name="depth_enable" />
		<jitterattribute name="depth_write" />
		<jitterattribute name="dest_dim" />
		<jitterattribute name="drawto" />
		<jitterattribute name="enable" />
		<jitterattribute name="filterclass" />
		<jitterattribute name="gl_color" />
		<jitterattribute name="inherit_all" />
		<jitterattribute name="inherit_color" />
		<jitterattribute name="inherit_depth" />
		<jitterattribute name="inherit_fog" />
		<jitterattribute name="inherit_material" />
		<jitterattribute name="inherit_poly" />
		<jitterattribute name="inherit_texture" />
		<jitterattribute name="inherit_transform" />
		<jitterattribute name="layer" />
		<jitterattribute name="material" />
		<jitterattribute name="name" />
		<jitterattribute name="position" />
		<jitterattribute name="shader" />
		<jitterattribute name="smooth_shading" />
		<jitterattribute name="tex_map" />
		<jitterattribute name="tex_plane_s" />
		<jitterattribute name="tex_plane_t" />
		<jitterattribute name="texanchor" />
		<jitterattribute name="texrotate" />
		<jitterattribute name="texture" />
		<jitterattribute name="texzoom" />
	</jitterattributelist>
	<!--EXAMPLE-->
	<examplelist>
		<example img="jit.gl.pix.png" caption="Generates pixel processing shaders from a patcher" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		<seealso name="jit.gen" />
		<seealso name="jit.pix" />
		<seealso name="jit.gl.slab" />
		<seealso name="jit.expr" />
		<seealso name="jit.matrix" />
		<seealso name="gen~" />
		<seealso module="gen" name="gen_overview" type="vignette" />
		<seealso module="gen" name="gen_genexpr" type="vignette" />
		<seealso module="gen" name="gen_common_operators" type="vignette" />
		<seealso module="gen" name="gen_jitter_operators" type="vignette" />
	</seealsolist>
</c74object>
