<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "http://www.w3.org/TR/MathML2/dtd/xhtml-math11-f.dtd">
<html
	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:mml="http://www.w3.org/1998/Math/MathML"
><head><title>glMinmax</title><link rel="stylesheet" href="style.css" type="text/css"/><meta name="generator" content="DocBook XSL Stylesheets V1.59.1"/><link rel="home" href="index.xml" title="PyOpenGL 2.0.1.07 Man Pages"/><link rel="up" href="reference-GL.xml" title="GL"/><link rel="previous" href="glMatrixMode.3G.xml" title="glMatrixMode"/><link rel="next" href="glMultMatrix.3G.xml" title="glMultMatrix"/></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">glMinmax</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="glMatrixMode.3G.xml">Prev</a> </td><th width="60%" align="center">GL</th><td width="20%" align="right"> <a accesskey="n" href="glMultMatrix.3G.xml">Next</a></td></tr></table><hr/></div><div class="refentry" lang="en"><a name="glMinmax.3G"/><div class="titlepage"/><div class="refnamediv"><a name="glMinmax.3G-name"/><h2>Name</h2><p>glMinmax &#8212; define minmax table</p></div><div class="refsynopsisdiv"><a name="glMinmax.3G-c_spec"/><h2>C Specification</h2><table class="funcprototype" border="0" cellpadding="0" cellspacing="0"><tr><td valign="top"><code>void <tt>glMinmax</tt></code></td><td valign="top"><code>(</code></td><td valign="top"><code>GLenum <i><tt>target</tt></i>, GLenum <i><tt>internalformat</tt></i>, GLboolean <i><tt>sink</tt></i>);</code></td></tr></table></div><div class="refsynopsisdiv"><a name="glMinmax.3G-python_spec"/><h2>Python Specification</h2><table class="funcprototype" border="0" cellpadding="0" cellspacing="0"><tr><td valign="top"><code><tt>glMinmax</tt></code></td><td valign="top"><code>(</code></td><td valign="top"><code><i><tt>target</tt></i>, <i><tt>internalformat</tt></i>, <i><tt>sink</tt></i>) &#8594; <tt>None</tt></code></td></tr></table></div><div class="refsect1" lang="en"><a name="glMinmax.3G-parameters"/><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term"><i><tt>target</tt></i></span></dt><dd>
						The minmax table whose parameters are to be set. Must be <tt>GL_MINMAX</tt>.
					</dd><dt><span class="term"><i><tt>internalformat</tt></i></span></dt><dd>
						The of entries in the minmax table. Must be one of <tt>GL_ALPHA</tt>,
						<tt>GL_ALPHA4</tt>, <tt>GL_ALPHA8</tt>, <tt>GL_ALPHA12</tt>,
						<tt>GL_ALPHA16</tt>, <tt>GL_LUMINANCE</tt>, <tt>GL_LUMINANCE4</tt>,
						<tt>GL_LUMINANCE8</tt>, <tt>GL_LUMINANCE12</tt>,
						<tt>GL_LUMINANCE16</tt>, <tt>GL_LUMINANCE_ALPHA</tt>,
						<tt>GL_LUMINANCE4_ALPHA4</tt>, <tt>GL_LUMINANCE6_ALPHA2</tt>,
						<tt>GL_LUMINANCE8_ALPHA8</tt>, <tt>GL_LUMINANCE12_ALPHA4</tt>,
						<tt>GL_LUMINANCE12_ALPHA12</tt>, <tt>GL_LUMINANCE16_ALPHA16</tt>,
						<tt>GL_R3_G3_B2</tt>, <tt>GL_RGB</tt>, <tt>GL_RGB4</tt>,
						<tt>GL_RGB5</tt>, <tt>GL_RGB8</tt>, <tt>GL_RGB10</tt>,
						<tt>GL_RGB12</tt>, <tt>GL_RGB16</tt>, <tt>GL_RGBA</tt>,
						<tt>GL_RGBA2</tt>, <tt>GL_RGBA4</tt>, <tt>GL_RGB5_A1</tt>,
						<tt>GL_RGBA8</tt>, <tt>GL_RGB10_A2</tt>, <tt>GL_RGBA12</tt>, or
						<tt>GL_RGBA16</tt>.
					</dd><dt><span class="term"><i><tt>sink</tt></i></span></dt><dd>
						If <tt>GL_TRUE</tt>, pixels will be consumed by the minmax process and no drawing or texture
						loading will take place. If <tt>GL_FALSE</tt>, pixels will proceed to the final conversion
						process after minmax.
					</dd></dl></div></div><div class="refsect1" lang="en"><a name="glMinmax.3G-description"/><h2>Description</h2><p>
			When <tt>GL_MINMAX</tt> is enabled, the RGBA components of incoming pixels are compared to the minimum and
			maximum values for each component, which are stored in the 2-element minmax table. (The first element stores the
			minima, and the second element stores the maxima.) If a pixel component is greater than the corresponding component in
			the maximum element, then the maximum element is updated with the pixel component value. If a pixel component is less
			than the corresponding component in the minimum element, then the minimum element is updated with the pixel component
			value. (In both cases, if the internal of the minmax table includes luminance, then the R color component of incoming
			pixels is used for comparison.) The contents of the minmax table may be retrieved at a later time by calling <a href="glGetMinmax.3G.xml"><tt>glGetMinmax</tt></a>. The minmax operation is enabled or disabled by calling <a href="glEnable.3G.xml"><tt>glEnable</tt></a> or <a href="glEnable.3G.xml"><tt>glDisable</tt></a>, respectively, with an
			argument of <tt>GL_MINMAX</tt>.
		</p><p>
			<tt>glMinmax</tt> redefines the current minmax table to have entries of the specified by
			<i><tt>internalformat</tt></i>. The maximum element is initialized with the smallest possible component values,
			and the minimum element is initialized with the largest possible component values. The values in the previous minmax
			table, if any, are lost. If <i><tt>sink</tt></i> is <tt>GL_TRUE</tt>, then pixels are discarded
			after minmax; no further processing of the pixels takes place, and no drawing, texture loading, or pixel readback will
			result.
		</p></div><div class="refsect1" lang="en"><a name="glMinmax.3G-notes"/><h2>Notes</h2><p>
			<tt>glMinmax</tt> is present only if <tt>GL_ARB_imaging</tt> is returned when <a href="glGetString.3G.xml"><tt>glGetString</tt></a> is called with an argument of <tt>GL_EXTENSIONS</tt>.
		</p></div><div class="refsect1" lang="en"><a name="glMinmax.3G-errors"/><h2>Errors</h2><p>
			<tt>GL_INVALID_ENUM</tt> is generated if <i><tt>target</tt></i> is not one of the allowable values.
		</p><p>
			<tt>GL_INVALID_ENUM</tt> is generated if <i><tt>internalformat</tt></i> is not one of the allowable
			values.
		</p><p>
			<tt>GL_INVALID_OPERATION</tt> is generated if <tt>glMinmax</tt> is executed between the
			execution of <a href="glBegin.3G.xml"><tt>glBegin</tt></a> and the corresponding execution of <a href="glBegin.3G.xml"><tt>glEnd</tt></a>.
		</p></div><div class="refsect1" lang="en"><a name="glMinmax.3G-associated_gets"/><h2>Associated Gets</h2><p>
			<tt>glGetMinmaxParameter</tt>
		</p></div><div class="refsect1" lang="en"><a name="glMinmax.3G-see_also"/><h2>See Also</h2><p>
			<span class="simplelist"><a href="glGetMinmax.3G.xml">glGetMinmax</a>, <a href="glResetMinmax.3G.xml">glResetMinmax</a></span>
		</p></div></div><div class="navfooter"><hr/><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="glMatrixMode.3G.xml">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="reference-GL.xml">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="glMultMatrix.3G.xml">Next</a></td></tr><tr><td width="40%" align="left" valign="top">glMatrixMode </td><td width="20%" align="center"><a accesskey="h" href="index.xml">Home</a></td><td width="40%" align="right" valign="top"> glMultMatrix</td></tr></table></div></body></html>