<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>
<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>
<refsect1id="notes"><title>Notes</title>
<para>
<function>glQueryCounter</function> is available only if the GL version is 3.3 or higher.
</para>
</refsect1>
<refsect1id="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> /