summaryrefslogtreecommitdiff
path: root/glew/auto/EGL-Registry/sdk/docs/man/docbook4/eglReleaseThread.xml
diff options
context:
space:
mode:
authorsotech117 <michael_foiani@brown.edu>2024-04-09 03:14:17 -0400
committersotech117 <michael_foiani@brown.edu>2024-04-09 03:14:17 -0400
commit7a8d0d8bc2572707c9d35006f30ea835c86954b0 (patch)
treededb9a65c1698202ad485378b4186b667008abe5 /glew/auto/EGL-Registry/sdk/docs/man/docbook4/eglReleaseThread.xml
parent818324678bd5dca790c57048e5012d2937a4b5e5 (diff)
first draft to generate waves
Diffstat (limited to 'glew/auto/EGL-Registry/sdk/docs/man/docbook4/eglReleaseThread.xml')
-rw-r--r--glew/auto/EGL-Registry/sdk/docs/man/docbook4/eglReleaseThread.xml134
1 files changed, 134 insertions, 0 deletions
diff --git a/glew/auto/EGL-Registry/sdk/docs/man/docbook4/eglReleaseThread.xml b/glew/auto/EGL-Registry/sdk/docs/man/docbook4/eglReleaseThread.xml
new file mode 100644
index 0000000..c37f903
--- /dev/null
+++ b/glew/auto/EGL-Registry/sdk/docs/man/docbook4/eglReleaseThread.xml
@@ -0,0 +1,134 @@
+<?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 xml:base="" id="eglReleaseThread">
+ <refentryinfo>
+ <copyright>
+ <year>2003-2014</year>
+ <holder>The Khronos Group Inc.</holder>
+ </copyright>
+ </refentryinfo>
+ <refmeta>
+ <refentrytitle>eglReleaseThread</refentrytitle>
+ <manvolnum>3G</manvolnum>
+ </refmeta>
+ <refnamediv>
+ <refname>eglReleaseThread</refname>
+ <refpurpose>Release EGL per-thread state</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv><title>C Specification</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>EGLBoolean <function>eglReleaseThread</function></funcdef>
+ <void/>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+ <refsect1 id="description"><title>Description</title>
+ <para>
+ <function>eglReleaseThread</function> returns the EGL to its
+ state at thread initialization, releasing all per-thread
+ state including the error status returned by
+ <command>eglGetError</command>, the currently bound
+ rendering API defined by <command>eglBindAPI</command>, and
+ the current contexts for each supported client API. The
+ overhead of maintaining this state may be objectionable in
+ applications which create and destroy many threads, but only
+ call EGL or client APIs in a few of those threads at any
+ given time.
+ </para>
+ <para>
+ <constant>EGL_TRUE</constant> is returned on success, and the
+ following actions are taken:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ For each client API supported by EGL, if there is a
+ currently bound context, that context is released.
+ This is equivalent to calling
+ <function>eglMakeCurrent</function> with ctx set to
+ <constant>EGL_NO_CONTEXT</constant> and both draw
+ and read set to <constant>EGL_NO_SURFACE</constant>
+ (see section 3.7.3).
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The current rendering API is reset to its value at
+ thread initialization (see
+ <command>eglBindAPI</command>).
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Any additional implementation-dependent per-thread
+ state maintained by EGL is marked for deletion as
+ soon as possible.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ <function>eglReleaseThread</function> may be called in any
+ thread at any time, and may be called more than once in a
+ single thread. The initialization status of EGL (see section
+ 3.2) is not affected by releasing the thread; only
+ per-thread state is affected.
+ </para>
+ <para>
+ Resources explicitly allocated by calls to EGL, such as
+ contexts, surfaces, and configuration lists, are not
+ affected by <function>eglReleaseThread</function>. Such
+ resources belong not to the thread, but to the EGL
+ implementation as a whole.
+ </para>
+ </refsect1>
+ <refsect1 id="notes"><title>Notes</title>
+ <para>
+ <function>eglReleaseThread</function> is supported only if the
+ EGL version is 1.2 or greater.
+ </para>
+ <para>
+ Applications may call other EGL routines from a thread
+ following <function>eglReleaseThread</function>, but any
+ such call may reallocate the EGL state previously released.
+ In particular, calling <function>eglGetError</function>
+ immediately following a successful call to
+ <function>eglReleaseThread</function> will return
+ <constant>EGL_SUCCESS</constant>, but will also result in
+ reallocating per-thread state.
+ </para>
+ </refsect1>
+ <refsect1 id="errors"><title>Errors</title>
+ <para>
+ <constant>EGL_FALSE</constant> is returned on failure,
+ <constant>EGL_TRUE</constant> otherwise. There are no
+ defined conditions under which failure will occur. Even if
+ EGL is not initialized on any EGLDisplay,
+ <function>eglReleaseThread</function> should succeed.
+ </para>
+ <para>
+ However, platform-dependent failures may be signaled through
+ the value returned from <function>eglGetError</function>.
+ Unless the platform-dependent behavior is known, a failed
+ call to <function>eglReleaseThread</function> should be
+ assumed to leave the current rendering API, and the
+ currently bound contexts for each supported client API, in
+ an unknown state.
+ </para>
+ </refsect1>
+ <refsect1 id="seealso"><title>See Also</title>
+ <para>
+ <citerefentry><refentrytitle>eglBindAPI</refentrytitle></citerefentry>,
+ <citerefentry><refentrytitle>eglGetError</refentrytitle></citerefentry>,
+ <citerefentry><refentrytitle>eglMakeCurrent</refentrytitle></citerefentry>
+ </para>
+ </refsect1>
+ <refsect3 id="Copyright"><title></title>
+ <!-- Content included from copyright.inc.xsl -->
+ <imageobject>
+ <imagedata fileref="KhronosLogo.jpg" format="jpg" />
+ </imageobject>
+ <para />
+ </refsect3>
+</refentry>