Opentk/Source/Bind/Specifications/Docs/glFlush.xml

76 lines
3.3 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glFlush">
<refmeta>
<refmetainfo>
<copyright>
<year>1991-2006</year>
<holder>Silicon Graphics, Inc.</holder>
</copyright>
</refmetainfo>
<refentrytitle>glFlush</refentrytitle>
<manvolnum>3G</manvolnum>
</refmeta>
<refnamediv>
<refname>glFlush</refname>
<refpurpose>force execution of GL commands in finite time</refpurpose>
</refnamediv>
<refsynopsisdiv><title>C Specification</title>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glFlush</function></funcdef>
<paramdef> <parameter>void</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsect1 id="description"><title>Description</title>
<para>
Different GL implementations buffer commands in several different locations,
including network buffers and the graphics accelerator itself.
<function>glFlush</function> 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.
</para>
<para>
Because any GL program might be executed over a network,
or on an accelerator that buffers commands,
all programs should call <function>glFlush</function> whenever they count on having
all of their previously issued commands completed.
For example,
call <function>glFlush</function> before waiting for user input that depends on
the generated image.
</para>
</refsect1>
<refsect1 id="notes"><title>Notes</title>
<para>
<function>glFlush</function> can return at any time.
It does not wait until the execution of all previously
issued GL commands is complete.
</para>
</refsect1>
<refsect1 id="errors"><title>Errors</title>
<para>
<constant>GL_INVALID_OPERATION</constant> is generated if <function>glFlush</function>
is executed between the execution of <citerefentry><refentrytitle>glBegin</refentrytitle></citerefentry>
and the corresponding execution of <citerefentry><refentrytitle>glEnd</refentrytitle></citerefentry>.
</para>
</refsect1>
<refsect1 id="seealso"><title>See Also</title>
<para>
<citerefentry><refentrytitle>glFinish</refentrytitle></citerefentry>
</para>
</refsect1>
<refsect1 id="Copyright"><title>Copyright</title>
<para>
Copyright <trademark class="copyright"></trademark> 1991-2006
Silicon Graphics, Inc. This document is licensed under the SGI
Free Software B License. For details, see
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
</para>
</refsect1>
</refentry>