<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "xhtml1-transitional.dtd">
<!-- saved from url=(0013)about:internet -->
<?xml-stylesheet type="text/xsl" href="mathml.xsl"?><html xmlns="http://www.w3.org/1999/xhtml" xmlns:pref="http://www.w3.org/2002/Math/preference" pref:renderer="mathplayer-dl"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>eglCreateContext</title><meta name="generator" content="DocBook XSL Stylesheets V1.74.0" /></head><body><div class="refentry" lang="en" xml:lang="en"><a id="eglWaitNative"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>eglCreateContext — 
            create a new <acronym class="acronym">EGL</acronym> rendering context
        </p></div><div class="refsynopsisdiv"><h2>C Specification</h2><div class="funcsynopsis"><table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0" class="funcprototype-table"><tr><td><code class="funcdef">EGLContext <b class="fsfunc">eglCreateContext</b>(</code></td><td>EGLDisplay <var class="pdparam">display</var>, </td></tr><tr><td> </td><td>EGLConfig <var class="pdparam">config</var>, </td></tr><tr><td> </td><td>EGLContext <var class="pdparam">share_context</var>, </td></tr><tr><td> </td><td>EGLint const * <var class="pdparam">attrib_list</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="parameters"></a><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term"><em class="parameter"><code>display</code></em></span></dt><dd><p>
                    Specifies the
                    <acronym class="acronym">EGL</acronym>
                    display connection.
                </p></dd><dt><span class="term"><em class="parameter"><code>config</code></em></span></dt><dd><p>Specifies the EGL frame buffer configuration that
                    defines the frame buffer resource available to the rendering context.
                </p></dd><dt><span class="term"><em class="parameter"><code>share_context</code></em></span></dt><dd><p>
                    Specifies the
                    <acronym class="acronym">EGL</acronym>
                    rendering context with which to share texture objects.
                    <code class="constant">EGL_NO_CONTEXT</code>
                    indicates that no sharing is to take place.
                </p></dd><dt><span class="term"><em class="parameter"><code>attrib_list</code></em></span></dt><dd><p>Specifies attributes.</p></dd></dl></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="description"></a><h2>Description</h2><p>
            <code class="function">eglCreateContext</code> creates an EGL rendering
            context and returns its handle. This context can be used to render into
            an EGL drawing surface.
            If <code class="function">eglCreateContext</code> fails to create a
            rendering context, <code class="constant">EGL_NO_CONTEXT</code> is
            returned.
        </p><p>
            If <em class="parameter"><code>share_context</code></em> is not <code class="constant">EGL_NO_CONTEXT</code>,
            then all texture objects except object 0, are shared by context
            <em class="parameter"><code>share_context</code></em> and by the newly created context.
            An arbitrary number of rendering contexts can share a single texture
            object space.
            However, all rendering contexts that share a single texture object space
            must themselves exist in the same address space. Two rendering contexts
            share an address space if both are owned by a single process.
        </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="notes"></a><h2>Notes</h2><p>
            A <em class="firstterm">process</em> is a single execution environment,
            implemented in a single address space, consisting of one or more threads.
        </p><p>
            A <em class="firstterm">thread</em> is one of a set of subprocesses that
            share a single address space, but maintain separate program counters,
            stack spaces, and other related global data.
            A thread is the only member of its subprocess group is equivalent to a
            process.
        </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="errors"></a><h2>Errors</h2><p>
            <code class="constant">EGL_NO_CONTEXT</code> is returned if creation of
            the context fails.
        </p><p>
            <code class="constant">EGL_BAD_DISPLAY</code> is generated if
            <em class="parameter"><code>display</code></em> is not an EGL display connection.
        </p><p>
            <code class="constant">EGL_NOT_INITIALIZED</code> is generated if
            <em class="parameter"><code>display</code></em> has not been initialized.
        </p><p>
            <code class="constant">EGL_BAD_CONFIG</code> is generated if
            <em class="parameter"><code>config</code></em> is not an EGL frame buffer configuration.
        </p><p>
            <code class="constant">EGL_BAD_CONTEXT</code> is generated if
            <em class="parameter"><code>share_context</code></em> is not an EGL rendering context and is not
            <code class="constant">EGL_NO_CONTEXT</code>.
        </p><p>
            <code class="constant">EGL_BAD_ATTRIBUTE</code> is generated if
            <em class="parameter"><code>attrib_list</code></em> contains an invalid context attribute or if
            an attribute is not recognized or out of range.
        </p><p>
            <code class="constant">EGL_BAD_ALLOC</code> is generated if there are not
            enough resources to allocate the new context.
        </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="seealso"></a><h2>See Also</h2><p>
            <a class="citerefentry" href="eglDestroyContext.xml"><span class="citerefentry"><span class="refentrytitle">eglDestroyContext</span></span></a>,
            <a class="citerefentry" href="eglChooseConfig.xml"><span class="citerefentry"><span class="refentrytitle">eglChooseConfig</span></span></a>,
            <a class="citerefentry" href="eglGetConfigs.xml"><span class="citerefentry"><span class="refentrytitle">eglGetConfigs</span></span></a>,
            <a class="citerefentry" href="eglMakeCurrent.xml"><span class="citerefentry"><span class="refentrytitle">eglMakeCurrent</span></span></a>
        </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="copyright"></a><h2>Copyright</h2><p>
            Copyright <span class="trademark"></span>© 2003-2004
            Silicon Graphics, Inc. This document is licensed under the SGI
            Free Software B License. For details, see
            <a class="ulink" href="http://oss.sgi.com/projects/FreeB/" target="_top">http://oss.sgi.com/projects/FreeB/</a>.
        </p></div></div></body></html>

