<?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>glFlush</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="glFinish.3G.xml" title="glFinish"/><link rel="next" href="glFog.3G.xml" title="glFog"/></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">glFlush</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="glFinish.3G.xml">Prev</a> </td><th width="60%" align="center">GL</th><td width="20%" align="right"> <a accesskey="n" href="glFog.3G.xml">Next</a></td></tr></table><hr/></div><div class="refentry" lang="en"><a name="glFlush.3G"/><div class="titlepage"/><div class="refnamediv"><a name="glFlush.3G-name"/><h2>Name</h2><p>glFlush &#8212; force execution of GL commands in finite time</p></div><div class="refsynopsisdiv"><a name="glFlush.3G-c_spec"/><h2>C Specification</h2><table class="funcprototype" border="0" cellpadding="0" cellspacing="0"><tr><td valign="top"><code>void <tt>glFlush</tt></code></td><td valign="top"><code>(</code></td><td valign="top"><code>);</code></td></tr></table></div><div class="refsynopsisdiv"><a name="glFlush.3G-python_spec"/><h2>Python Specification</h2><table class="funcprototype" border="0" cellpadding="0" cellspacing="0"><tr><td valign="top"><code><tt>glFlush</tt></code></td><td valign="top"><code>(</code></td><td valign="top"><code>) &#8594; <tt>None</tt></code></td></tr></table></div><div class="refsect1" lang="en"><a name="glFlush.3G-description"/><h2>Description</h2><p>
			Different GL implementations buffer commands in several different locations, including network buffers and the graphics
			accelerator itself. <tt>glFlush</tt> empties all of these buffers, causing all issued commands to be
			executed as quickly as they are accepted by the actual rendering engine. Though this execution may not be completed in
			any particular time period, it does complete in finite time.
		</p><p>
			Because any GL program might be executed over a network, or on an accelerator that buffers commands, all programs
			should call <tt>glFlush</tt> whenever they count on having all of their previously issued commands
			completed. For example, call <tt>glFlush</tt> before waiting for user input that depends on the generated
			image.
		</p></div><div class="refsect1" lang="en"><a name="glFlush.3G-notes"/><h2>Notes</h2><p>
			<tt>glFlush</tt> can return at any time. It does not wait until the execution of all previously issued GL
			commands is complete.
		</p></div><div class="refsect1" lang="en"><a name="glFlush.3G-errors"/><h2>Errors</h2><p>
			<tt>GL_INVALID_OPERATION</tt> is generated if <tt>glFlush</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="glFlush.3G-see_also"/><h2>See Also</h2><p>
			<span class="simplelist"><a href="glFinish.3G.xml">glFinish</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="glFinish.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="glFog.3G.xml">Next</a></td></tr><tr><td width="40%" align="left" valign="top">glFinish </td><td width="20%" align="center"><a accesskey="h" href="index.xml">Home</a></td><td width="40%" align="right" valign="top"> glFog</td></tr></table></div></body></html>