add upstream documentation
[clinton/guile-figl.git] / upstream-man-pages / man4 / glQueryCounter.xml
diff --git a/upstream-man-pages/man4/glQueryCounter.xml b/upstream-man-pages/man4/glQueryCounter.xml
new file mode 100644 (file)
index 0000000..1f1f676
--- /dev/null
@@ -0,0 +1,96 @@
+<?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="glQueryCounter">
+    <refmeta>
+        <refmetainfo>
+            <copyright>
+                <year>2010</year>
+                <holder>Khronos Group</holder>
+            </copyright>
+        </refmetainfo>
+        <refentrytitle>glQueryCounter</refentrytitle>
+        <manvolnum>3G</manvolnum>
+    </refmeta>
+    <refnamediv>
+        <refname>glQueryCounter</refname>
+        <refpurpose>record the GL time into a query object after all previous commands have reached the GL server but have not yet necessarily executed.</refpurpose>
+    </refnamediv>
+    <refsynopsisdiv><title>C Specification</title>
+        <funcsynopsis>
+            <funcprototype>
+                <funcdef>void <function>glQueryCounter</function></funcdef>
+                <paramdef>GLuint <parameter>id</parameter></paramdef>
+                <paramdef>GLenum <parameter>target</parameter></paramdef>
+            </funcprototype>
+        </funcsynopsis>
+    </refsynopsisdiv>
+    <refsect1 id="parameters"><title>Parameters</title>
+        <variablelist>
+        <varlistentry>
+            <term><parameter>id</parameter></term>
+            <listitem>
+                <para>
+                    Specify the name of a query object into which to record the GL time.
+                </para>
+            </listitem>
+        </varlistentry>
+        <varlistentry>
+            <term><parameter>target</parameter></term>
+            <listitem>
+                <para>
+                    Specify the counter to query. <parameter>target</parameter> must be <constant>GL_TIMESTAMP</constant>.
+                </para>
+            </listitem>
+        </varlistentry>
+        </variablelist>
+    </refsect1>
+    <refsect1 id="description"><title>Description</title>
+        <para>
+            <function>glQueryCounter</function> causes the GL to record the current time into the query object named <parameter>id</parameter>.
+            <parameter>target</parameter> must be <constant>GL_TIMESTAMP</constant>. The time is recorded after all previous commands on the
+            GL client and server state and the framebuffer have been fully realized. When the time is recorded, the query result for that object
+            is marked available. <function>glQueryCounter</function> timer queries can be used within a <citerefentry><refentrytitle>glBeginQuery</refentrytitle></citerefentry> /
+            <citerefentry><refentrytitle>glEndQuery</refentrytitle></citerefentry> block where the target is <constant>GL_TIME_ELAPSED</constant> and it does
+            not affect the result of that query object.
+        </para>
+    </refsect1>
+    <refsect1 id="notes"><title>Notes</title>
+        <para>
+            <function>glQueryCounter</function> is available only if the GL version is 3.3 or higher.
+        </para>
+    </refsect1>
+    <refsect1 id="errors"><title>Errors</title>
+        <para>
+            <constant>GL_INVALID_OPERATION</constant> is generated if <parameter>id</parameter> is the name
+            of a query object that is already in use within a <citerefentry><refentrytitle>glBeginQuery</refentrytitle></citerefentry> /
+            <citerefentry><refentrytitle>glEndQuery</refentrytitle></citerefentry> block.
+        </para>
+        <para>
+            <constant>GL_INVALID_VALUE</constant> is generated if <parameter>id</parameter> is not the name of a query object returned
+            from a previous call to <citerefentry><refentrytitle>glGenQueries</refentrytitle></citerefentry>.
+        </para>
+        <para>
+            <constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not <constant>GL_TIMESTAMP</constant>.
+        </para>
+    </refsect1>
+    <refsect1 id="seealso"><title>See Also</title>
+        <para>
+            <citerefentry><refentrytitle>glGenQueries</refentrytitle></citerefentry>,
+            <citerefentry><refentrytitle>glBeginQuery</refentrytitle></citerefentry>,
+            <citerefentry><refentrytitle>glEndQuery</refentrytitle></citerefentry>,
+            <citerefentry><refentrytitle>glDeleteQueries</refentrytitle></citerefentry>,
+            <citerefentry><refentrytitle>glGetQueryObject</refentrytitle></citerefentry>,
+            <citerefentry><refentrytitle>glGetQueryiv</refentrytitle></citerefentry>,
+            <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry>
+        </para>
+    </refsect1>
+    <refsect1 id="Copyright"><title>Copyright</title>
+        <para>
+            Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. 
+            This material may be distributed subject to the terms and conditions set forth in 
+            the Open Publication License, v 1.0, 8 June 1999.
+            <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.
+        </para>
+    </refsect1>
+</refentry>