<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title xmlns:xlink="http://www.w3.org/1999/xlink">eglMakeCurrent - EGL Reference Pages</title>
    <link rel="stylesheet" type="text/css" href="khronos-man.css"/>
    <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"/>
  </head>
  <body>
    <header/>
    <div class="refentry" id="eglMakeCurrent">
      <div class="titlepage"/>
      <div class="refnamediv">
        <h2>Name</h2>
        <p>eglMakeCurrent — 
            attach an EGL rendering context to EGL surfaces
        </p>
      </div>
      <div class="refsynopsisdiv">
        <h2>C Specification</h2>
        <div class="funcsynopsis">
          <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table">
            <tr>
              <td>
                <code class="funcdef">EGLBoolean <strong class="fsfunc">eglMakeCurrent</strong>(</code>
              </td>
              <td>EGLDisplay <var class="pdparam">display</var>, </td>
            </tr>
            <tr>
              <td> </td>
              <td>EGLSurface <var class="pdparam">draw</var>, </td>
            </tr>
            <tr>
              <td> </td>
              <td>EGLSurface <var class="pdparam">read</var>, </td>
            </tr>
            <tr>
              <td> </td>
              <td>EGLContext <var class="pdparam">context</var><code>)</code>;</td>
            </tr>
          </table>
          <div class="funcprototype-spacer"> </div>
        </div>
      </div>
      <div class="refsect1" id="parameters">
        <h2>Parameters</h2>
        <div class="variablelist">
          <dl class="variablelist">
            <dt>
              <span class="term">
                <em class="parameter">
                  <code>display</code>
                </em>
              </span>
            </dt>
            <dd>
              <p>Specifies the <abbr class="acronym">EGL</abbr> display connection.</p>
            </dd>
            <dt>
              <span class="term">
                <em class="parameter">
                  <code>draw</code>
                </em>
              </span>
            </dt>
            <dd>
              <p>Specifies the <abbr class="acronym">EGL</abbr> draw surface.</p>
            </dd>
            <dt>
              <span class="term">
                <em class="parameter">
                  <code>read</code>
                </em>
              </span>
            </dt>
            <dd>
              <p>Specifies the <abbr class="acronym">EGL</abbr> read surface.</p>
            </dd>
            <dt>
              <span class="term">
                <em class="parameter">
                  <code>context</code>
                </em>
              </span>
            </dt>
            <dd>
              <p>Specifies the <abbr class="acronym">EGL</abbr> rendering context
                        to be attached to the surfaces.
                    </p>
            </dd>
          </dl>
        </div>
      </div>
      <div class="refsect1" id="description">
        <h2>Description</h2>
        <p>
            <code class="function">eglMakeCurrent</code> binds <em class="parameter"><code>context</code></em>
            to the current rendering thread and to the <em class="parameter"><code>draw</code></em>
            and <em class="parameter"><code>read</code></em> surfaces. <em class="parameter"><code>draw</code></em>
            is used for all GL operations except for any pixel data read back
            (<a class="citerefentry" href="glReadPixels.xhtml"><span class="citerefentry"><span class="refentrytitle">glReadPixels</span></span></a>,
            <a class="citerefentry" href="glCopyTexImage2D.xhtml"><span class="citerefentry"><span class="refentrytitle">glCopyTexImage2D</span></span></a>, and
            <a class="citerefentry" href="glCopyTexSubImage2D.xhtml"><span class="citerefentry"><span class="refentrytitle">glCopyTexSubImage2D</span></span></a>),
            which is taken from the frame buffer values of
            <em class="parameter"><code>read</code></em>.
        </p>
        <p>
            If the calling thread has already a current rendering context, that
            context is flushed and marked as no longer current.
        </p>
        <p>
            The first time that <em class="parameter"><code>context</code></em> is made current,
            the viewport and scissor dimensions are set to the size of the
            <em class="parameter"><code>draw</code></em> surface. The viewport and
            scissor are not modified when <em class="parameter"><code>context</code></em> is
            subsequently made current.
        </p>
        <p>
            To release the current context without assigning a new one, call
            <code class="function">eglMakeCurrent</code> with <em class="parameter"><code>draw</code></em>
            and <em class="parameter"><code>read</code></em> set to
            <code class="constant">EGL_NO_SURFACE</code> and <em class="parameter"><code>context</code></em>
            set to <code class="constant">EGL_NO_CONTEXT</code>.
        </p>
        <p>
            Use
            <a class="citerefentry" href="eglGetCurrentContext.xhtml"><span class="citerefentry"><span class="refentrytitle">eglGetCurrentContext</span></span></a>,
            <a class="citerefentry" href="eglGetCurrentDisplay.xhtml"><span class="citerefentry"><span class="refentrytitle">eglGetCurrentDisplay</span></span></a>, and
            <a class="citerefentry" href="eglGetCurrentSurface.xhtml"><span class="citerefentry"><span class="refentrytitle">eglGetCurrentSurface</span></span></a>
            to query the current rendering context and associated display connection and surfaces.
        </p>
      </div>
      <div class="refsect1" id="errors">
        <h2>Errors</h2>
        <p>
            <code class="constant">EGL_FALSE</code> is returned on failure,
            <code class="constant">EGL_TRUE</code> otherwise. If <code class="constant">EGL_FALSE</code>
            is returned, the previously current rendering context and
            surfaces (if any) remain unchanged.
        </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_SURFACE</code> is generated if
            <em class="parameter"><code>draw</code></em> or <em class="parameter"><code>read</code></em> is not an
            EGL surface.
        </p>
        <p>
            <code class="constant">EGL_BAD_CONTEXT</code> is generated if
            <em class="parameter"><code>context</code></em> is not an EGL rendering context.
        </p>
        <p>
            <code class="constant">EGL_BAD_MATCH</code> is generated if
            <em class="parameter"><code>draw</code></em> or
            <em class="parameter"><code>read</code></em>
            are not compatible with
            <em class="parameter"><code>context</code></em>, or if
            <em class="parameter"><code>context</code></em> is set to
            <code class="constant">EGL_NO_CONTEXT</code> and
            <em class="parameter"><code>draw</code></em> or
            <em class="parameter"><code>read</code></em>
            are not set to
            <code class="constant">EGL_NO_SURFACE</code>, or if
            <em class="parameter"><code>draw</code></em> or
            <em class="parameter"><code>read</code></em> are set to
            <code class="constant">EGL_NO_SURFACE</code> and
            <em class="parameter"><code>context</code></em> is not set to
            <code class="constant">EGL_NO_CONTEXT</code>.
        </p>
        <p>
            <code class="constant">EGL_BAD_ACCESS</code> is generated if
            <em class="parameter"><code>context</code></em>
            is current to some other thread.
        </p>
        <p>
            <code class="constant">EGL_BAD_NATIVE_PIXMAP</code> may be generated if
            a native pixmap underlying either
            <em class="parameter"><code>draw</code></em> or
            <em class="parameter"><code>read</code></em>
            is no longer valid.
        </p>
        <p>
            <code class="constant">EGL_BAD_NATIVE_WINDOW</code> may be generated if
            a native window underlying either
            <em class="parameter"><code>draw</code></em> or
            <em class="parameter"><code>read</code></em>
            is no longer valid.
        </p>
        <p>
            <code class="constant">EGL_BAD_CURRENT_SURFACE</code> is generated if
            the previous context has unflushed commands and the previous surface
            is no longer valid.
        </p>
        <p>
            <code class="constant">EGL_BAD_ALLOC</code> may be generated if
            allocation of ancillary buffers for <em class="parameter"><code>draw</code></em> or
            <em class="parameter"><code>read</code></em> were delayed until
            <code class="function">eglMakeCurrent</code> is called, and there are not
            enough resources to allocate them.
        </p>
        <p>
            <code class="constant">EGL_CONTEXT_LOST</code> is generated if a power management
            event has occurred. The application must destroy all contexts and
            reinitialise OpenGL ES state and objects to continue rendering.
        </p>
      </div>
      <div class="refsect1" id="seealso">
        <h2>See Also</h2>
        <p>
            <a class="citerefentry" href="glReadPixels.xhtml"><span class="citerefentry"><span class="refentrytitle">glReadPixels</span></span></a>,
            <a class="citerefentry" href="glCopyTexImage2D.xhtml"><span class="citerefentry"><span class="refentrytitle">glCopyTexImage2D</span></span></a>,
            <a class="citerefentry" href="glCopyTexSubImage2D.xhtml"><span class="citerefentry"><span class="refentrytitle">glCopyTexSubImage2D</span></span></a>,
            <a class="citerefentry" href="eglCreateContext.xhtml"><span class="citerefentry"><span class="refentrytitle">eglCreateContext</span></span></a>,
            <a class="citerefentry" href="eglCreatePbufferSurface.xhtml"><span class="citerefentry"><span class="refentrytitle">eglCreatePbufferSurface</span></span></a>,
            <a class="citerefentry" href="eglCreatePixmapSurface.xhtml"><span class="citerefentry"><span class="refentrytitle">eglCreatePixmapSurface</span></span></a>,
            <a class="citerefentry" href="eglCreateWindowSurface.xhtml"><span class="citerefentry"><span class="refentrytitle">eglCreateWindowSurface</span></span></a>,
            <a class="citerefentry" href="eglGetCurrentContext.xhtml"><span class="citerefentry"><span class="refentrytitle">eglGetCurrentContext</span></span></a>,
            <a class="citerefentry" href="eglGetCurrentDisplay.xhtml"><span class="citerefentry"><span class="refentrytitle">eglGetCurrentDisplay</span></span></a>,
            <a class="citerefentry" href="eglGetCurrentSurface.xhtml"><span class="citerefentry"><span class="refentrytitle">eglGetCurrentSurface</span></span></a>,
            <a class="citerefentry" href="eglGetDisplay.xhtml"><span class="citerefentry"><span class="refentrytitle">eglGetDisplay</span></span></a>,
            <a class="citerefentry" href="eglInitialize.xhtml"><span class="citerefentry"><span class="refentrytitle">eglInitialize</span></span></a>
        </p>
      </div>
      <p>
    </p>
      <div class="refsect3" id="copyright">
        <img src="KhronosLogo.jpg"/>
        <p>
            Copyright © 2003-2014 The Khronos Group Inc.
            Permission is hereby granted, free of charge, to any person obtaining a
            copy of this software and/or associated documentation files (the
            "Materials"), to deal in the Materials without restriction, including
            without limitation the rights to use, copy, modify, merge, publish,
            distribute, sublicense, and/or sell copies of the Materials, and to
            permit persons to whom the Materials are furnished to do so, subject to
            the condition that this copyright notice and permission notice shall be included
            in all copies or substantial portions of the Materials.
        </p>
      </div>
      <p>
</p>
    </div>
    <footer/>
  </body>
</html>
