102f4aeb0Sopenharmony_ci<?xml version="1.0" encoding="UTF-8" standalone="no"?>
202f4aeb0Sopenharmony_ci<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml">
302f4aeb0Sopenharmony_ci  <head>
402f4aeb0Sopenharmony_ci    <title xmlns:xlink="http://www.w3.org/1999/xlink">eglCreateImage - EGL Reference Pages</title>
502f4aeb0Sopenharmony_ci    <link rel="stylesheet" type="text/css" href="khronos-man.css"/>
602f4aeb0Sopenharmony_ci    <meta name="generator" content="DocBook XSL Stylesheets V1.79.1"/>
702f4aeb0Sopenharmony_ci  </head>
802f4aeb0Sopenharmony_ci  <body>
902f4aeb0Sopenharmony_ci    <header/>
1002f4aeb0Sopenharmony_ci    <div class="refentry" id="eglCreateImage">
1102f4aeb0Sopenharmony_ci      <div class="titlepage"/>
1202f4aeb0Sopenharmony_ci      <div class="refnamediv">
1302f4aeb0Sopenharmony_ci        <h2>Name</h2>
1402f4aeb0Sopenharmony_ci        <p>eglCreateImage — 
1502f4aeb0Sopenharmony_ci            Create a new <span class="type">EGLImage</span> object
1602f4aeb0Sopenharmony_ci        </p>
1702f4aeb0Sopenharmony_ci      </div>
1802f4aeb0Sopenharmony_ci      <div class="refsynopsisdiv">
1902f4aeb0Sopenharmony_ci        <h2>C Specification</h2>
2002f4aeb0Sopenharmony_ci        <div class="funcsynopsis">
2102f4aeb0Sopenharmony_ci          <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table">
2202f4aeb0Sopenharmony_ci            <tr>
2302f4aeb0Sopenharmony_ci              <td>
2402f4aeb0Sopenharmony_ci                <code class="funcdef">EGLImage <strong class="fsfunc">eglCreateImage</strong>(</code>
2502f4aeb0Sopenharmony_ci              </td>
2602f4aeb0Sopenharmony_ci              <td>(EGLDisplay <var class="pdparam">display</var>, </td>
2702f4aeb0Sopenharmony_ci            </tr>
2802f4aeb0Sopenharmony_ci            <tr>
2902f4aeb0Sopenharmony_ci              <td> </td>
3002f4aeb0Sopenharmony_ci              <td>EGLContext <var class="pdparam">context</var>, </td>
3102f4aeb0Sopenharmony_ci            </tr>
3202f4aeb0Sopenharmony_ci            <tr>
3302f4aeb0Sopenharmony_ci              <td> </td>
3402f4aeb0Sopenharmony_ci              <td>EGLenum <var class="pdparam">target</var>, </td>
3502f4aeb0Sopenharmony_ci            </tr>
3602f4aeb0Sopenharmony_ci            <tr>
3702f4aeb0Sopenharmony_ci              <td> </td>
3802f4aeb0Sopenharmony_ci              <td>EGLClientBuffer <var class="pdparam">buffer</var>, </td>
3902f4aeb0Sopenharmony_ci            </tr>
4002f4aeb0Sopenharmony_ci            <tr>
4102f4aeb0Sopenharmony_ci              <td> </td>
4202f4aeb0Sopenharmony_ci              <td>const EGLAttrib *<var class="pdparam">attrib_list</var><code>)</code>;</td>
4302f4aeb0Sopenharmony_ci            </tr>
4402f4aeb0Sopenharmony_ci          </table>
4502f4aeb0Sopenharmony_ci          <div class="funcprototype-spacer"> </div>
4602f4aeb0Sopenharmony_ci        </div>
4702f4aeb0Sopenharmony_ci      </div>
4802f4aeb0Sopenharmony_ci      <div class="refsect1" id="parameters">
4902f4aeb0Sopenharmony_ci        <h2>Parameters</h2>
5002f4aeb0Sopenharmony_ci        <div class="variablelist">
5102f4aeb0Sopenharmony_ci          <dl class="variablelist">
5202f4aeb0Sopenharmony_ci            <dt>
5302f4aeb0Sopenharmony_ci              <span class="term">
5402f4aeb0Sopenharmony_ci                <em class="parameter">
5502f4aeb0Sopenharmony_ci                  <code>display</code>
5602f4aeb0Sopenharmony_ci                </em>
5702f4aeb0Sopenharmony_ci              </span>
5802f4aeb0Sopenharmony_ci            </dt>
5902f4aeb0Sopenharmony_ci            <dd>
6002f4aeb0Sopenharmony_ci              <p>
6102f4aeb0Sopenharmony_ci                    Specifies the <abbr class="acronym">EGL</abbr> display connection.
6202f4aeb0Sopenharmony_ci                </p>
6302f4aeb0Sopenharmony_ci            </dd>
6402f4aeb0Sopenharmony_ci            <dt>
6502f4aeb0Sopenharmony_ci              <span class="term">
6602f4aeb0Sopenharmony_ci                <em class="parameter">
6702f4aeb0Sopenharmony_ci                  <code>context</code>
6802f4aeb0Sopenharmony_ci                </em>
6902f4aeb0Sopenharmony_ci              </span>
7002f4aeb0Sopenharmony_ci            </dt>
7102f4aeb0Sopenharmony_ci            <dd>
7202f4aeb0Sopenharmony_ci              <p>
7302f4aeb0Sopenharmony_ci                    Specifies the client API context for which the image is
7402f4aeb0Sopenharmony_ci                    created.
7502f4aeb0Sopenharmony_ci                </p>
7602f4aeb0Sopenharmony_ci            </dd>
7702f4aeb0Sopenharmony_ci            <dt>
7802f4aeb0Sopenharmony_ci              <span class="term">
7902f4aeb0Sopenharmony_ci                <em class="parameter">
8002f4aeb0Sopenharmony_ci                  <code>target</code>
8102f4aeb0Sopenharmony_ci                </em>
8202f4aeb0Sopenharmony_ci              </span>
8302f4aeb0Sopenharmony_ci            </dt>
8402f4aeb0Sopenharmony_ci            <dd>
8502f4aeb0Sopenharmony_ci              <p>
8602f4aeb0Sopenharmony_ci                    Specifies the type of resource used as the image source.
8702f4aeb0Sopenharmony_ci                </p>
8802f4aeb0Sopenharmony_ci            </dd>
8902f4aeb0Sopenharmony_ci            <dt>
9002f4aeb0Sopenharmony_ci              <span class="term">
9102f4aeb0Sopenharmony_ci                <em class="parameter">
9202f4aeb0Sopenharmony_ci                  <code>buffer</code>
9302f4aeb0Sopenharmony_ci                </em>
9402f4aeb0Sopenharmony_ci              </span>
9502f4aeb0Sopenharmony_ci            </dt>
9602f4aeb0Sopenharmony_ci            <dd>
9702f4aeb0Sopenharmony_ci              <p>
9802f4aeb0Sopenharmony_ci                    Specifies the resource to be used as the image source.
9902f4aeb0Sopenharmony_ci                </p>
10002f4aeb0Sopenharmony_ci            </dd>
10102f4aeb0Sopenharmony_ci            <dt>
10202f4aeb0Sopenharmony_ci              <span class="term">
10302f4aeb0Sopenharmony_ci                <em class="parameter">
10402f4aeb0Sopenharmony_ci                  <code>attrib_list</code>
10502f4aeb0Sopenharmony_ci                </em>
10602f4aeb0Sopenharmony_ci              </span>
10702f4aeb0Sopenharmony_ci            </dt>
10802f4aeb0Sopenharmony_ci            <dd>
10902f4aeb0Sopenharmony_ci              <p>
11002f4aeb0Sopenharmony_ci                    Specifies attributes used to select sub-sections of the
11102f4aeb0Sopenharmony_ci                    resource to be used as the image source.
11202f4aeb0Sopenharmony_ci                </p>
11302f4aeb0Sopenharmony_ci            </dd>
11402f4aeb0Sopenharmony_ci          </dl>
11502f4aeb0Sopenharmony_ci        </div>
11602f4aeb0Sopenharmony_ci      </div>
11702f4aeb0Sopenharmony_ci      <div class="refsect1" id="description">
11802f4aeb0Sopenharmony_ci        <h2>Description</h2>
11902f4aeb0Sopenharmony_ci        <p>
12002f4aeb0Sopenharmony_ci            <code class="function">eglCreateImage</code> is used to create an
12102f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> object from an existing image resource
12202f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em>. <em class="parameter"><code>display</code></em>
12302f4aeb0Sopenharmony_ci            specifies the EGL display used for this operation.
12402f4aeb0Sopenharmony_ci            <em class="parameter"><code>context</code></em> specifies the EGL client API
12502f4aeb0Sopenharmony_ci            context used for this operation, or
12602f4aeb0Sopenharmony_ci            <code class="constant">EGL_NO_CONTEXT</code> if a client API context is
12702f4aeb0Sopenharmony_ci            not required. <em class="parameter"><code>target</code></em> specifies the type
12802f4aeb0Sopenharmony_ci            of resource being used as the <span class="type">EGLImage</span> source
12902f4aeb0Sopenharmony_ci            (examples include two-dimensional textures in OpenGL ES contexts
13002f4aeb0Sopenharmony_ci            and <span class="type">VGImage</span> objects in OpenVG contexts).
13102f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> is the name (or handle) of a
13202f4aeb0Sopenharmony_ci            resource to be used as the <span class="type">EGLImage</span> source, cast
13302f4aeb0Sopenharmony_ci            into the type <span class="type">EGLClientBuffer</span>.
13402f4aeb0Sopenharmony_ci            <em class="parameter"><code>attrib_list</code></em> is a list of attribute-value
13502f4aeb0Sopenharmony_ci            pairs which is used to select sub-sections of
13602f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> for use as the
13702f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> source, such as mipmap levels for OpenGL
13802f4aeb0Sopenharmony_ci            ES texture map resources, as well as behavioral options, such as
13902f4aeb0Sopenharmony_ci            whether to preserve pixel data during creation. If
14002f4aeb0Sopenharmony_ci            <em class="parameter"><code>attrib_list</code></em> is
14102f4aeb0Sopenharmony_ci            non-<code class="constant">NULL</code>, the last attribute specified in
14202f4aeb0Sopenharmony_ci            the list must be <code class="constant">EGL_NONE</code>.
14302f4aeb0Sopenharmony_ci        </p>
14402f4aeb0Sopenharmony_ci        <p>
14502f4aeb0Sopenharmony_ci            The resource specified by <em class="parameter"><code>display</code></em>,
14602f4aeb0Sopenharmony_ci            <em class="parameter"><code>context</code></em>, <em class="parameter"><code>target</code></em>,
14702f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em>, and
14802f4aeb0Sopenharmony_ci            <em class="parameter"><code>attrib_list</code></em> must not itself be an
14902f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> sibling, or bound to a pbuffer
15002f4aeb0Sopenharmony_ci            <span class="type">EGLSurface</span> resource
15102f4aeb0Sopenharmony_ci            (<code class="function">eglBindTexImage</code>,
15202f4aeb0Sopenharmony_ci            <code class="function">eglCreatePbufferFromClientBuffer</code>).
15302f4aeb0Sopenharmony_ci        </p>
15402f4aeb0Sopenharmony_ci        <p>
15502f4aeb0Sopenharmony_ci            Values accepted for <em class="parameter"><code>target</code></em> are shown in
15602f4aeb0Sopenharmony_ci            table <a class="xref" href="#tab-imagetarget" title="Table 1.  Legal values for eglCreateImage target">Table 1, “
15702f4aeb0Sopenharmony_ci                Legal values for <code class="function">eglCreateImage</code> <em class="parameter"><code>target</code></em>
15802f4aeb0Sopenharmony_ci            ”</a>.
15902f4aeb0Sopenharmony_ci        </p>
16002f4aeb0Sopenharmony_ci        <div class="table" id="tab-imagetarget">
16102f4aeb0Sopenharmony_ci          <div class="table-title">Table 1. 
16202f4aeb0Sopenharmony_ci                Legal values for <code class="function">eglCreateImage</code> <em class="parameter"><code>target</code></em>
16302f4aeb0Sopenharmony_ci            </div>
16402f4aeb0Sopenharmony_ci          <div class="table-contents">
16502f4aeb0Sopenharmony_ci            <table style="border-collapse: collapse; border-top: 2px solid ; border-bottom: 2px solid ; border-left: 2px solid ; border-right: 2px solid ; ">
16602f4aeb0Sopenharmony_ci              <colgroup>
16702f4aeb0Sopenharmony_ci                <col/>
16802f4aeb0Sopenharmony_ci                <col/>
16902f4aeb0Sopenharmony_ci              </colgroup>
17002f4aeb0Sopenharmony_ci              <thead>
17102f4aeb0Sopenharmony_ci                <tr>
17202f4aeb0Sopenharmony_ci                  <th style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
17302f4aeb0Sopenharmony_ci                    <em class="parameter">
17402f4aeb0Sopenharmony_ci                      <code>target</code>
17502f4aeb0Sopenharmony_ci                    </em>
17602f4aeb0Sopenharmony_ci                  </th>
17702f4aeb0Sopenharmony_ci                  <th style="text-align: left; border-bottom: 2px solid ; ">Notes</th>
17802f4aeb0Sopenharmony_ci                </tr>
17902f4aeb0Sopenharmony_ci              </thead>
18002f4aeb0Sopenharmony_ci              <tbody>
18102f4aeb0Sopenharmony_ci                <tr>
18202f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
18302f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_2D</code>
18402f4aeb0Sopenharmony_ci                  </td>
18502f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">Used for GL 2D texture images</td>
18602f4aeb0Sopenharmony_ci                </tr>
18702f4aeb0Sopenharmony_ci                <tr>
18802f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
18902f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X</code>
19002f4aeb0Sopenharmony_ci                  </td>
19102f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">Used for the +X face of GL cubemap texture images</td>
19202f4aeb0Sopenharmony_ci                </tr>
19302f4aeb0Sopenharmony_ci                <tr>
19402f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
19502f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X</code>
19602f4aeb0Sopenharmony_ci                  </td>
19702f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">Used for the -X face of GL cubemap texture images</td>
19802f4aeb0Sopenharmony_ci                </tr>
19902f4aeb0Sopenharmony_ci                <tr>
20002f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
20102f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y</code>
20202f4aeb0Sopenharmony_ci                  </td>
20302f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">Used for the +Y face of GL cubemap texture images</td>
20402f4aeb0Sopenharmony_ci                </tr>
20502f4aeb0Sopenharmony_ci                <tr>
20602f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
20702f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y</code>
20802f4aeb0Sopenharmony_ci                  </td>
20902f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">Used for the -Y face of GL cubemap texture images</td>
21002f4aeb0Sopenharmony_ci                </tr>
21102f4aeb0Sopenharmony_ci                <tr>
21202f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
21302f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z</code>
21402f4aeb0Sopenharmony_ci                  </td>
21502f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">Used for the +Z face of GL cubemap texture images</td>
21602f4aeb0Sopenharmony_ci                </tr>
21702f4aeb0Sopenharmony_ci                <tr>
21802f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
21902f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z</code>
22002f4aeb0Sopenharmony_ci                  </td>
22102f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">Used for the -Z face of GL cubemap texture images</td>
22202f4aeb0Sopenharmony_ci                </tr>
22302f4aeb0Sopenharmony_ci                <tr>
22402f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
22502f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_3D</code>
22602f4aeb0Sopenharmony_ci                  </td>
22702f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">Used for OpenGL and OpenGL ES 3D texture images</td>
22802f4aeb0Sopenharmony_ci                </tr>
22902f4aeb0Sopenharmony_ci                <tr>
23002f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; ">
23102f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_RENDERBUFFER</code>
23202f4aeb0Sopenharmony_ci                  </td>
23302f4aeb0Sopenharmony_ci                  <td style="text-align: left; ">Used for OpenGL and OpenGL ES renderbuffer images</td>
23402f4aeb0Sopenharmony_ci                </tr>
23502f4aeb0Sopenharmony_ci              </tbody>
23602f4aeb0Sopenharmony_ci            </table>
23702f4aeb0Sopenharmony_ci          </div>
23802f4aeb0Sopenharmony_ci        </div>
23902f4aeb0Sopenharmony_ci        <br class="table-break"/>
24002f4aeb0Sopenharmony_ci        <p>
24102f4aeb0Sopenharmony_ci            Attribute names accepted in <em class="parameter"><code>attrib_list</code></em>
24202f4aeb0Sopenharmony_ci            are shown in table <a class="xref" href="#tab-imageattr" title="Table 2.  Legal attributes for eglCreateImage attrib_list parameter">Table 2, “
24302f4aeb0Sopenharmony_ci                Legal attributes for <code class="function">eglCreateImage</code>
24402f4aeb0Sopenharmony_ci                <em class="parameter"><code>attrib_list</code></em> parameter
24502f4aeb0Sopenharmony_ci            ”</a>, together
24602f4aeb0Sopenharmony_ci            with the <em class="parameter"><code>target</code></em> for which each attribute
24702f4aeb0Sopenharmony_ci            name is valid, and the default value used for each attribute if
24802f4aeb0Sopenharmony_ci            it is not included in <em class="parameter"><code>attrib_list</code></em>.
24902f4aeb0Sopenharmony_ci        </p>
25002f4aeb0Sopenharmony_ci        <div class="table" id="tab-imageattr">
25102f4aeb0Sopenharmony_ci          <div class="table-title">Table 2. 
25202f4aeb0Sopenharmony_ci                Legal attributes for <code class="function">eglCreateImage</code>
25302f4aeb0Sopenharmony_ci                <em class="parameter"><code>attrib_list</code></em> parameter
25402f4aeb0Sopenharmony_ci            </div>
25502f4aeb0Sopenharmony_ci          <div class="table-contents">
25602f4aeb0Sopenharmony_ci            <table style="border-collapse: collapse; border-top: 2px solid ; border-bottom: 2px solid ; border-left: 2px solid ; border-right: 2px solid ; ">
25702f4aeb0Sopenharmony_ci              <colgroup>
25802f4aeb0Sopenharmony_ci                <col/>
25902f4aeb0Sopenharmony_ci                <col/>
26002f4aeb0Sopenharmony_ci                <col/>
26102f4aeb0Sopenharmony_ci                <col/>
26202f4aeb0Sopenharmony_ci              </colgroup>
26302f4aeb0Sopenharmony_ci              <thead>
26402f4aeb0Sopenharmony_ci                <tr>
26502f4aeb0Sopenharmony_ci                  <th style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
26602f4aeb0Sopenharmony_ci                    <em class="parameter">
26702f4aeb0Sopenharmony_ci                      <code>target</code>
26802f4aeb0Sopenharmony_ci                    </em>
26902f4aeb0Sopenharmony_ci                  </th>
27002f4aeb0Sopenharmony_ci                  <th style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">Notes</th>
27102f4aeb0Sopenharmony_ci                  <td style="border-right: 2px solid ; border-bottom: 2px solid ; " class="auto-generated"> </td>
27202f4aeb0Sopenharmony_ci                  <td style="border-bottom: 2px solid ; " class="auto-generated"> </td>
27302f4aeb0Sopenharmony_ci                </tr>
27402f4aeb0Sopenharmony_ci              </thead>
27502f4aeb0Sopenharmony_ci              <tbody>
27602f4aeb0Sopenharmony_ci                <tr>
27702f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">Attribute</td>
27802f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">Description</td>
27902f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">Valid <em class="parameter"><code>target</code></em>s</td>
28002f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">Default Value</td>
28102f4aeb0Sopenharmony_ci                </tr>
28202f4aeb0Sopenharmony_ci                <tr>
28302f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
28402f4aeb0Sopenharmony_ci                    <code class="constant">EGL_NONE</code>
28502f4aeb0Sopenharmony_ci                  </td>
28602f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">Marks the end of the attribute-value list</td>
28702f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">All</td>
28802f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">N/A</td>
28902f4aeb0Sopenharmony_ci                </tr>
29002f4aeb0Sopenharmony_ci                <tr>
29102f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
29202f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_LEVEL</code>
29302f4aeb0Sopenharmony_ci                  </td>
29402f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
29502f4aeb0Sopenharmony_ci                            Specifies the mipmap level used as the
29602f4aeb0Sopenharmony_ci                            <span class="type">EGLImage</span> source. Must be part of
29702f4aeb0Sopenharmony_ci                            the complete texture object
29802f4aeb0Sopenharmony_ci                            <em class="parameter"><code>buffer</code></em>
29902f4aeb0Sopenharmony_ci                        </td>
30002f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
30102f4aeb0Sopenharmony_ci                            <code class="constant">EGL_GL_TEXTURE_2D</code>,
30202f4aeb0Sopenharmony_ci                            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code>, or
30302f4aeb0Sopenharmony_ci                            <code class="constant">EGL_GL_TEXTURE_3D</code>
30402f4aeb0Sopenharmony_ci                        </td>
30502f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">0</td>
30602f4aeb0Sopenharmony_ci                </tr>
30702f4aeb0Sopenharmony_ci                <tr>
30802f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
30902f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_ZOFFSET</code>
31002f4aeb0Sopenharmony_ci                  </td>
31102f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
31202f4aeb0Sopenharmony_ci                            Specifies the depth offset of the image to use
31302f4aeb0Sopenharmony_ci                            as the <span class="type">EGLImage</span> source. Must be
31402f4aeb0Sopenharmony_ci                            part of the complete texture object
31502f4aeb0Sopenharmony_ci                            <em class="parameter"><code>buffer</code></em>
31602f4aeb0Sopenharmony_ci                        </td>
31702f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
31802f4aeb0Sopenharmony_ci                    <code class="constant">EGL_GL_TEXTURE_3D</code>
31902f4aeb0Sopenharmony_ci                  </td>
32002f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-bottom: 2px solid ; ">0</td>
32102f4aeb0Sopenharmony_ci                </tr>
32202f4aeb0Sopenharmony_ci                <tr>
32302f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; ">
32402f4aeb0Sopenharmony_ci                    <code class="constant">EGL_IMAGE_PRESERVED</code>
32502f4aeb0Sopenharmony_ci                  </td>
32602f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; ">Whether to preserve pixel data</td>
32702f4aeb0Sopenharmony_ci                  <td style="text-align: left; border-right: 2px solid ; ">All</td>
32802f4aeb0Sopenharmony_ci                  <td style="text-align: left; ">
32902f4aeb0Sopenharmony_ci                    <code class="constant">EGL_FALSE</code>
33002f4aeb0Sopenharmony_ci                  </td>
33102f4aeb0Sopenharmony_ci                </tr>
33202f4aeb0Sopenharmony_ci              </tbody>
33302f4aeb0Sopenharmony_ci            </table>
33402f4aeb0Sopenharmony_ci          </div>
33502f4aeb0Sopenharmony_ci        </div>
33602f4aeb0Sopenharmony_ci        <br class="table-break"/>
33702f4aeb0Sopenharmony_ci        <p>
33802f4aeb0Sopenharmony_ci            <code class="function">eglCreateImage</code> returns an
33902f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> object corresponding to the image data
34002f4aeb0Sopenharmony_ci            specified by <em class="parameter"><code>display</code></em>,
34102f4aeb0Sopenharmony_ci            <em class="parameter"><code>context</code></em>, <em class="parameter"><code>target</code></em>,
34202f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> and
34302f4aeb0Sopenharmony_ci            <em class="parameter"><code>attrib_list</code></em> which may be referenced by
34402f4aeb0Sopenharmony_ci            client API operations.
34502f4aeb0Sopenharmony_ci        </p>
34602f4aeb0Sopenharmony_ci        <p>
34702f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
34802f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
34902f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>,
35002f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_RENDERBUFFER</code>,
35102f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X</code>,
35202f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X</code>,
35302f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y</code>,
35402f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y</code>,
35502f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z</code>, or
35602f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z</code>,
35702f4aeb0Sopenharmony_ci            <em class="parameter"><code>display</code></em> must be a valid
35802f4aeb0Sopenharmony_ci            <span class="type">EGLDisplay</span>, and <em class="parameter"><code>context</code></em> must
35902f4aeb0Sopenharmony_ci            be a valid OpenGL or OpenGL ES API context on that display.
36002f4aeb0Sopenharmony_ci        </p>
36102f4aeb0Sopenharmony_ci        <p>
36202f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
36302f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
36402f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> must be the name of a nonzero,
36502f4aeb0Sopenharmony_ci            <code class="constant">GL_TEXTURE_2D</code> target texture object, cast
36602f4aeb0Sopenharmony_ci            into the type <span class="type">EGLClientBuffer</span>.
36702f4aeb0Sopenharmony_ci        </p>
36802f4aeb0Sopenharmony_ci        <p>
36902f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is one of the
37002f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code> enumerants,
37102f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> must be the name of a nonzero,
37202f4aeb0Sopenharmony_ci            <code class="constant">GL_TEXTURE_CUBE_MAP</code> (or equivalent in GL
37302f4aeb0Sopenharmony_ci            extensions) target texture object, cast into the type
37402f4aeb0Sopenharmony_ci            <span class="type">EGLClientBuffer</span>.
37502f4aeb0Sopenharmony_ci        </p>
37602f4aeb0Sopenharmony_ci        <p>
37702f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
37802f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>,
37902f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> must be the name of a nonzero,
38002f4aeb0Sopenharmony_ci            <code class="constant">GL_TEXTURE_3D</code> (or equivalent in GL
38102f4aeb0Sopenharmony_ci            extensions) target texture object, cast into the type
38202f4aeb0Sopenharmony_ci            <span class="type">EGLClientBuffer</span>.
38302f4aeb0Sopenharmony_ci        </p>
38402f4aeb0Sopenharmony_ci        <p>
38502f4aeb0Sopenharmony_ci            <em class="parameter"><code>attrib_list</code></em> should specify the mipmap
38602f4aeb0Sopenharmony_ci            level (<code class="constant">EGL_GL_TEXTURE_LEVEL</code>) and, where
38702f4aeb0Sopenharmony_ci            applicable, z-offset
38802f4aeb0Sopenharmony_ci            (<code class="constant">EGL_GL_TEXTURE_ZOFFSET</code>) which will be used
38902f4aeb0Sopenharmony_ci            as the <span class="type">EGLImage</span> source; If not specified, the
39002f4aeb0Sopenharmony_ci            default values listed in table <a class="xref" href="#tab-imageattr" title="Table 2.  Legal attributes for eglCreateImage attrib_list parameter">Table 2, “
39102f4aeb0Sopenharmony_ci                Legal attributes for <code class="function">eglCreateImage</code>
39202f4aeb0Sopenharmony_ci                <em class="parameter"><code>attrib_list</code></em> parameter
39302f4aeb0Sopenharmony_ci            ”</a>
39402f4aeb0Sopenharmony_ci            will be used instead. Additional values specified in are
39502f4aeb0Sopenharmony_ci            ignored.
39602f4aeb0Sopenharmony_ci        </p>
39702f4aeb0Sopenharmony_ci        <p>
39802f4aeb0Sopenharmony_ci            There must exist some levels <span class="emphasis"><em>x</em></span> and
39902f4aeb0Sopenharmony_ci            <span class="emphasis"><em>y</em></span> such that the mipmap level requested lies
40002f4aeb0Sopenharmony_ci            between <span class="emphasis"><em>x</em></span> and <span class="emphasis"><em>y</em></span>
40102f4aeb0Sopenharmony_ci            (inclusive), the texture would be mipmap complete were
40202f4aeb0Sopenharmony_ci            <span class="emphasis"><em>x</em></span> substituted for the base level and
40302f4aeb0Sopenharmony_ci            <span class="emphasis"><em>y</em></span> substituted for the max level, and all
40402f4aeb0Sopenharmony_ci            levels less than <span class="emphasis"><em>x</em></span> or greater than
40502f4aeb0Sopenharmony_ci            <span class="emphasis"><em>y</em></span> are unspecified. For cubemaps a single
40602f4aeb0Sopenharmony_ci            pair <span class="emphasis"><em>x</em></span> and <span class="emphasis"><em>y</em></span> must
40702f4aeb0Sopenharmony_ci            apply to all faces. For three-dimensional textures, the
40802f4aeb0Sopenharmony_ci            specified z-offset must be smaller than the depth of the
40902f4aeb0Sopenharmony_ci            specified mipmap level.
41002f4aeb0Sopenharmony_ci        </p>
41102f4aeb0Sopenharmony_ci        <p>
41202f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
41302f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_RENDERBUFFER</code>,
41402f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> must be the name of a complete,
41502f4aeb0Sopenharmony_ci            nonzero, non-multisampled <code class="constant">GL_RENDERBUFFER</code>
41602f4aeb0Sopenharmony_ci            (or equivalent in extensions) target object, cast into the type
41702f4aeb0Sopenharmony_ci            <span class="type">EGLClientBuffer</span>. Values specified in
41802f4aeb0Sopenharmony_ci            <em class="parameter"><code>attrib_list</code></em> are ignored.
41902f4aeb0Sopenharmony_ci        </p>
42002f4aeb0Sopenharmony_ci        <p>
42102f4aeb0Sopenharmony_ci            If the value of attribute
42202f4aeb0Sopenharmony_ci            <code class="constant">EGL_IMAGE_PRESERVED</code> is
42302f4aeb0Sopenharmony_ci            <code class="constant">EGL_FALSE</code> (the default), then all pixel
42402f4aeb0Sopenharmony_ci            data values associated with <em class="parameter"><code>buffer</code></em> will
42502f4aeb0Sopenharmony_ci            be undefined after <code class="function">eglCreateImage</code> returns.
42602f4aeb0Sopenharmony_ci        </p>
42702f4aeb0Sopenharmony_ci        <p>
42802f4aeb0Sopenharmony_ci            If the value of attribute
42902f4aeb0Sopenharmony_ci            <code class="constant">EGL_IMAGE_PRESERVED</code> is
43002f4aeb0Sopenharmony_ci            <code class="constant">EGL_TRUE</code>, then all pixel data values
43102f4aeb0Sopenharmony_ci            associated with <em class="parameter"><code>buffer</code></em> are preserved.
43202f4aeb0Sopenharmony_ci        </p>
43302f4aeb0Sopenharmony_ci      </div>
43402f4aeb0Sopenharmony_ci      <div class="refsect1" id="errors">
43502f4aeb0Sopenharmony_ci        <h2>Errors</h2>
43602f4aeb0Sopenharmony_ci        <p>
43702f4aeb0Sopenharmony_ci            <code class="function">eglCreateImage</code> returns
43802f4aeb0Sopenharmony_ci            <code class="constant">EGL_NO_IMAGE</code> on failure. The contents of
43902f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> will be unaffected.
44002f4aeb0Sopenharmony_ci        </p>
44102f4aeb0Sopenharmony_ci        <p>
44202f4aeb0Sopenharmony_ci            If <em class="parameter"><code>display</code></em> is not the handle of a valid
44302f4aeb0Sopenharmony_ci            <span class="type">EGLDisplay</span> object, the error
44402f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_DISPLAY</code> is generated.
44502f4aeb0Sopenharmony_ci        </p>
44602f4aeb0Sopenharmony_ci        <p>
44702f4aeb0Sopenharmony_ci            If <em class="parameter"><code>context</code></em> is neither the handle of a
44802f4aeb0Sopenharmony_ci            valid <span class="type">EGLContext</span> object on
44902f4aeb0Sopenharmony_ci            <em class="parameter"><code>display</code></em> nor
45002f4aeb0Sopenharmony_ci            <code class="constant">EGL_NO_CONTEXT</code>, the error
45102f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_CONTEXT</code> is generated.
45202f4aeb0Sopenharmony_ci        </p>
45302f4aeb0Sopenharmony_ci        <p>
45402f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is not one of the values in
45502f4aeb0Sopenharmony_ci            table <a class="xref" href="#tab-imagetarget" title="Table 1.  Legal values for eglCreateImage target">Table 1, “
45602f4aeb0Sopenharmony_ci                Legal values for <code class="function">eglCreateImage</code> <em class="parameter"><code>target</code></em>
45702f4aeb0Sopenharmony_ci            ”</a>, the error
45802f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_PARAMETER</code> is generated.
45902f4aeb0Sopenharmony_ci        </p>
46002f4aeb0Sopenharmony_ci        <p>
46102f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
46202f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
46302f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code>,
46402f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_RENDERBUFFER</code> or
46502f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>, and
46602f4aeb0Sopenharmony_ci            <em class="parameter"><code>display</code></em> is not a valid
46702f4aeb0Sopenharmony_ci            <span class="type">EGLDisplay</span>, the error
46802f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_DISPLAY</code> is generated.
46902f4aeb0Sopenharmony_ci        </p>
47002f4aeb0Sopenharmony_ci        <p>
47102f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
47202f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
47302f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code>,
47402f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_RENDERBUFFER</code> or
47502f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>, and
47602f4aeb0Sopenharmony_ci            <em class="parameter"><code>context</code></em> is not a valid
47702f4aeb0Sopenharmony_ci            <span class="type">EGLContext</span>, the error
47802f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_CONTEXT</code> is generated.
47902f4aeb0Sopenharmony_ci        </p>
48002f4aeb0Sopenharmony_ci        <p>
48102f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
48202f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
48302f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code>,
48402f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_RENDERBUFFER</code> or
48502f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>, and
48602f4aeb0Sopenharmony_ci            <em class="parameter"><code>context</code></em> is not a valid GL context, or
48702f4aeb0Sopenharmony_ci            does not match the <em class="parameter"><code>display</code></em>, the error
48802f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_MATCH</code> is generated.
48902f4aeb0Sopenharmony_ci        </p>
49002f4aeb0Sopenharmony_ci        <p>
49102f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
49202f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
49302f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code> or
49402f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code> and
49502f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> is not the name of a texture
49602f4aeb0Sopenharmony_ci            object of type <em class="parameter"><code>target</code></em>, the error
49702f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_PARAMETER</code> is generated.
49802f4aeb0Sopenharmony_ci        </p>
49902f4aeb0Sopenharmony_ci        <p>
50002f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
50102f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_RENDERBUFFER</code> and
50202f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> is not the name of a renderbuffer
50302f4aeb0Sopenharmony_ci            object, or if <em class="parameter"><code>buffer</code></em> is the name of a
50402f4aeb0Sopenharmony_ci            multisampled renderbuffer object, the error
50502f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_PARAMETER</code> is generated.
50602f4aeb0Sopenharmony_ci        </p>
50702f4aeb0Sopenharmony_ci        <p>
50802f4aeb0Sopenharmony_ci            If <code class="constant">EGL_GL_TEXTURE_LEVEL</code> is nonzero,
50902f4aeb0Sopenharmony_ci            <em class="parameter"><code>target</code></em> is
51002f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
51102f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code> or
51202f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>, and
51302f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> is not the name of a complete GL
51402f4aeb0Sopenharmony_ci            texture object, the error <code class="constant">EGL_BAD_PARAMETER</code>
51502f4aeb0Sopenharmony_ci            is generated.
51602f4aeb0Sopenharmony_ci        </p>
51702f4aeb0Sopenharmony_ci        <p>
51802f4aeb0Sopenharmony_ci            If <code class="constant">EGL_GL_TEXTURE_LEVEL</code> is 0,
51902f4aeb0Sopenharmony_ci            <em class="parameter"><code>target</code></em> is
52002f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
52102f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code> or
52202f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>,
52302f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> is the name of an incomplete GL
52402f4aeb0Sopenharmony_ci            texture object, and any mipmap levels other than mipmap level 0
52502f4aeb0Sopenharmony_ci            are specified, the error <code class="constant">EGL_BAD_PARAMETER</code>
52602f4aeb0Sopenharmony_ci            is generated.
52702f4aeb0Sopenharmony_ci        </p>
52802f4aeb0Sopenharmony_ci        <p>
52902f4aeb0Sopenharmony_ci            If <code class="constant">EGL_GL_TEXTURE_LEVEL</code> is 0,
53002f4aeb0Sopenharmony_ci            <em class="parameter"><code>target</code></em> is
53102f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code> or
53202f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>,
53302f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> is not the name of a complete GL
53402f4aeb0Sopenharmony_ci            texture object, and mipmap level 0 is not specified, the error
53502f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_PARAMETER</code> is generated.
53602f4aeb0Sopenharmony_ci        </p>
53702f4aeb0Sopenharmony_ci        <p>
53802f4aeb0Sopenharmony_ci            If <code class="constant">EGL_GL_TEXTURE_LEVEL</code> is 0,
53902f4aeb0Sopenharmony_ci            <em class="parameter"><code>target</code></em> is
54002f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code>,
54102f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> is not the name of a complete GL
54202f4aeb0Sopenharmony_ci            texture object, and one or more faces do not have mipmap level 0
54302f4aeb0Sopenharmony_ci            specified, the error <code class="constant">EGL_BAD_PARAMETER</code> is
54402f4aeb0Sopenharmony_ci            generated.
54502f4aeb0Sopenharmony_ci        </p>
54602f4aeb0Sopenharmony_ci        <p>
54702f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
54802f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
54902f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code>,
55002f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_RENDERBUFFER</code> or
55102f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code> and
55202f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> refers to the default GL texture
55302f4aeb0Sopenharmony_ci            object (0) for the corresponding GL target, the error
55402f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_PARAMETER</code> is generated.
55502f4aeb0Sopenharmony_ci        </p>
55602f4aeb0Sopenharmony_ci        <p>
55702f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
55802f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_2D</code>,
55902f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_CUBE_MAP_*</code>, or
56002f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>, and the value specified
56102f4aeb0Sopenharmony_ci            in <em class="parameter"><code>attrib_list</code></em> for
56202f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_LEVEL</code> is not a valid mipmap
56302f4aeb0Sopenharmony_ci            level for the specified GL texture object
56402f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em>, the error
56502f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_MATCH</code> is generated.
56602f4aeb0Sopenharmony_ci        </p>
56702f4aeb0Sopenharmony_ci        <p>
56802f4aeb0Sopenharmony_ci            If <em class="parameter"><code>target</code></em> is
56902f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_3D</code>, and the value specified
57002f4aeb0Sopenharmony_ci            in <em class="parameter"><code>attrib_list</code></em> for
57102f4aeb0Sopenharmony_ci            <code class="constant">EGL_GL_TEXTURE_ZOFFSET</code> exceeds the depth of
57202f4aeb0Sopenharmony_ci            the specified mipmap level-of-detail in
57302f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em>, the error
57402f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_PARAMETER</code> is generated.
57502f4aeb0Sopenharmony_ci        </p>
57602f4aeb0Sopenharmony_ci        <p>
57702f4aeb0Sopenharmony_ci            If an attribute specified in <em class="parameter"><code>attrib_list</code></em>
57802f4aeb0Sopenharmony_ci            is not one of the attributes shown in table <a class="xref" href="#tab-imageattr" title="Table 2.  Legal attributes for eglCreateImage attrib_list parameter">Table 2, “
57902f4aeb0Sopenharmony_ci                Legal attributes for <code class="function">eglCreateImage</code>
58002f4aeb0Sopenharmony_ci                <em class="parameter"><code>attrib_list</code></em> parameter
58102f4aeb0Sopenharmony_ci            ”</a>, the error
58202f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_PARAMETER</code> is generated.
58302f4aeb0Sopenharmony_ci        </p>
58402f4aeb0Sopenharmony_ci        <p>
58502f4aeb0Sopenharmony_ci            If an attribute specified in <em class="parameter"><code>attrib_list</code></em>
58602f4aeb0Sopenharmony_ci            is not a valid attribute for <em class="parameter"><code>target</code></em>, as
58702f4aeb0Sopenharmony_ci            shown in table <a class="xref" href="#tab-imageattr" title="Table 2.  Legal attributes for eglCreateImage attrib_list parameter">Table 2, “
58802f4aeb0Sopenharmony_ci                Legal attributes for <code class="function">eglCreateImage</code>
58902f4aeb0Sopenharmony_ci                <em class="parameter"><code>attrib_list</code></em> parameter
59002f4aeb0Sopenharmony_ci            ”</a>, the error
59102f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_MATCH</code> is generated.
59202f4aeb0Sopenharmony_ci        </p>
59302f4aeb0Sopenharmony_ci        <p>
59402f4aeb0Sopenharmony_ci            If the resource specified by <em class="parameter"><code>display</code></em>,
59502f4aeb0Sopenharmony_ci            <em class="parameter"><code>context</code></em>, <em class="parameter"><code>target</code></em>,
59602f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> and
59702f4aeb0Sopenharmony_ci            <em class="parameter"><code>attrib_list</code></em> has an off-screen buffer
59802f4aeb0Sopenharmony_ci            bound to it (e.g., by a previous call to
59902f4aeb0Sopenharmony_ci            <code class="function">eglBindTexImage</code>), the error
60002f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_ACCESS</code> is generated.
60102f4aeb0Sopenharmony_ci        </p>
60202f4aeb0Sopenharmony_ci        <p>
60302f4aeb0Sopenharmony_ci            If the resource specified by <em class="parameter"><code>display</code></em>,
60402f4aeb0Sopenharmony_ci            <em class="parameter"><code>context</code></em>, <em class="parameter"><code>target</code></em>,
60502f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> and
60602f4aeb0Sopenharmony_ci            <em class="parameter"><code>attrib_list</code></em> is bound to an off-screen
60702f4aeb0Sopenharmony_ci            buffer (e.g., by a previous call to
60802f4aeb0Sopenharmony_ci            <code class="function">eglCreatePbufferFromClientBuffer</code>), the
60902f4aeb0Sopenharmony_ci            error <code class="constant">EGL_BAD_ACCESS</code> is generated.
61002f4aeb0Sopenharmony_ci        </p>
61102f4aeb0Sopenharmony_ci        <p>
61202f4aeb0Sopenharmony_ci            If the resource specified by <em class="parameter"><code>display</code></em>,
61302f4aeb0Sopenharmony_ci            <em class="parameter"><code>context</code></em>, <em class="parameter"><code>target</code></em>,
61402f4aeb0Sopenharmony_ci            <em class="parameter"><code>buffer</code></em> and
61502f4aeb0Sopenharmony_ci            <em class="parameter"><code>attrib_list</code></em> is itself an
61602f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> sibling, the error
61702f4aeb0Sopenharmony_ci            <code class="constant">EGL_BAD_ACCESS</code> is generated.
61802f4aeb0Sopenharmony_ci        </p>
61902f4aeb0Sopenharmony_ci        <p>
62002f4aeb0Sopenharmony_ci            If insufficient memory is available to complete the specified
62102f4aeb0Sopenharmony_ci            operation, the error <code class="constant">EGL_BAD_ALLOC</code> is
62202f4aeb0Sopenharmony_ci            generated.
62302f4aeb0Sopenharmony_ci        </p>
62402f4aeb0Sopenharmony_ci        <p>
62502f4aeb0Sopenharmony_ci            If the value specified in <em class="parameter"><code>attrib_list</code></em> for
62602f4aeb0Sopenharmony_ci            <code class="constant">EGL_IMAGE_PRESERVED</code> is
62702f4aeb0Sopenharmony_ci            <code class="constant">EGL_TRUE</code>, and an <span class="type">EGLImage</span>
62802f4aeb0Sopenharmony_ci            handle cannot be created from the specified resource such that
62902f4aeb0Sopenharmony_ci            the pixel data values in <em class="parameter"><code>buffer</code></em> are
63002f4aeb0Sopenharmony_ci            preserved, the error <code class="constant">EGL_BAD_ACCESS</code> is
63102f4aeb0Sopenharmony_ci            generated.
63202f4aeb0Sopenharmony_ci        </p>
63302f4aeb0Sopenharmony_ci        <p>
63402f4aeb0Sopenharmony_ci            Note that the success or failure of
63502f4aeb0Sopenharmony_ci            <code class="function">eglCreateImage</code> should not affect the
63602f4aeb0Sopenharmony_ci            ability to use <em class="parameter"><code>buffer</code></em> in its original API
63702f4aeb0Sopenharmony_ci            context (or context share group) (although the pixel data values
63802f4aeb0Sopenharmony_ci            will be undefined if the command succeeds and the value of
63902f4aeb0Sopenharmony_ci            <code class="constant">EGL_IMAGE_PRESERVED</code> is not
64002f4aeb0Sopenharmony_ci            <code class="constant">EGL_TRUE</code>).
64102f4aeb0Sopenharmony_ci        </p>
64202f4aeb0Sopenharmony_ci      </div>
64302f4aeb0Sopenharmony_ci      <div class="refsect1" id="lifetime">
64402f4aeb0Sopenharmony_ci        <h2>Lifetime and Usage of <span class="type">EGLImage</span>s</h2>
64502f4aeb0Sopenharmony_ci        <p>
64602f4aeb0Sopenharmony_ci            Once an <span class="type">EGLImage</span> is created from an
64702f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> source, the memory associated with the
64802f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> source will remain allocated (and all
64902f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> siblings in all client API contexts will
65002f4aeb0Sopenharmony_ci            be useable) as long as either of the following conditions is
65102f4aeb0Sopenharmony_ci            true:
65202f4aeb0Sopenharmony_ci        </p>
65302f4aeb0Sopenharmony_ci        <p>
65402f4aeb0Sopenharmony_ci            </p>
65502f4aeb0Sopenharmony_ci        <div class="itemizedlist">
65602f4aeb0Sopenharmony_ci          <ul class="itemizedlist" style="list-style-type: disc; ">
65702f4aeb0Sopenharmony_ci            <li class="listitem">
65802f4aeb0Sopenharmony_ci              <p>
65902f4aeb0Sopenharmony_ci                     Any <span class="type">EGLImage</span> siblings exist in any client
66002f4aeb0Sopenharmony_ci                     API context
66102f4aeb0Sopenharmony_ci                </p>
66202f4aeb0Sopenharmony_ci            </li>
66302f4aeb0Sopenharmony_ci            <li class="listitem">
66402f4aeb0Sopenharmony_ci              <p>
66502f4aeb0Sopenharmony_ci                    The <span class="type">EGLImage</span> object exists inside EGL
66602f4aeb0Sopenharmony_ci                </p>
66702f4aeb0Sopenharmony_ci            </li>
66802f4aeb0Sopenharmony_ci          </ul>
66902f4aeb0Sopenharmony_ci        </div>
67002f4aeb0Sopenharmony_ci        <p>
67102f4aeb0Sopenharmony_ci        </p>
67202f4aeb0Sopenharmony_ci        <p>
67302f4aeb0Sopenharmony_ci            The semantics for specifying, deleting and using
67402f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> siblings are client API-specific, and are
67502f4aeb0Sopenharmony_ci            described in the appropriate API specifications.
67602f4aeb0Sopenharmony_ci        </p>
67702f4aeb0Sopenharmony_ci        <p>
67802f4aeb0Sopenharmony_ci            If an application specifies an <span class="type">EGLImage</span> sibling as
67902f4aeb0Sopenharmony_ci            the destination for rendering and/or pixel download operations
68002f4aeb0Sopenharmony_ci            (e.g., as an OpenGL or OpenGL ES framebuffer object,
68102f4aeb0Sopenharmony_ci            <code class="function">glTexSubImage2D</code>, etc.), the modified image
68202f4aeb0Sopenharmony_ci            results will be observed by all <span class="type">EGLImage</span> siblings
68302f4aeb0Sopenharmony_ci            in all client API contexts. If multiple client API contexts
68402f4aeb0Sopenharmony_ci            access <span class="type">EGLImage</span> sibling resources simultaneously,
68502f4aeb0Sopenharmony_ci            with one or more context modifying the image data, rendering
68602f4aeb0Sopenharmony_ci            results in all contexts accessing <span class="type">EGLImage</span> siblings
68702f4aeb0Sopenharmony_ci            are undefined.
68802f4aeb0Sopenharmony_ci        </p>
68902f4aeb0Sopenharmony_ci        <p>
69002f4aeb0Sopenharmony_ci            Respecification and/or deletion of any <span class="type">EGLImage</span>
69102f4aeb0Sopenharmony_ci            sibling (i.e., both <span class="type">EGLImage</span> source and
69202f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> target resources) inside a client API
69302f4aeb0Sopenharmony_ci            context (by issuing a subsequent call to commands such as
69402f4aeb0Sopenharmony_ci            <code class="function">glTexImage*</code> or
69502f4aeb0Sopenharmony_ci            <code class="function">glDeleteTextures</code>, with the
69602f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> sibling resource as the target of the
69702f4aeb0Sopenharmony_ci            operation) affects only that client API context and other
69802f4aeb0Sopenharmony_ci            contexts within its share group. For an OpenGL or OpenGL ES
69902f4aeb0Sopenharmony_ci            context, respecification always results in
70002f4aeb0Sopenharmony_ci            <em class="firstterm">orphaning</em> of the <span class="type">EGLImage</span>,
70102f4aeb0Sopenharmony_ci            and may also include allocation of additional memory for the
70202f4aeb0Sopenharmony_ci            respecified resource and/or copying of the <span class="type">EGLImage</span>
70302f4aeb0Sopenharmony_ci            pixel data.
70402f4aeb0Sopenharmony_ci        </p>
70502f4aeb0Sopenharmony_ci        <p>
70602f4aeb0Sopenharmony_ci            Note: Behavior of other types of client APIs generally follows
70702f4aeb0Sopenharmony_ci            the OpenGL and OpenGL ES behavior described here, although this
70802f4aeb0Sopenharmony_ci            is not mandated yet.
70902f4aeb0Sopenharmony_ci        </p>
71002f4aeb0Sopenharmony_ci        <p>
71102f4aeb0Sopenharmony_ci            Operations inside EGL or any client API context which may affect
71202f4aeb0Sopenharmony_ci            the lifetime of an <span class="type">EGLImage</span> (or the memory
71302f4aeb0Sopenharmony_ci            allocated for the <span class="type">EGLImage</span>), such as respecifying
71402f4aeb0Sopenharmony_ci            and/or deleting an <span class="type">EGLImage</span> sibling inside a client
71502f4aeb0Sopenharmony_ci            API context, must be atomic.
71602f4aeb0Sopenharmony_ci        </p>
71702f4aeb0Sopenharmony_ci        <p>
71802f4aeb0Sopenharmony_ci            Applications may create client API resources from an
71902f4aeb0Sopenharmony_ci            <span class="type">EGLImage</span> using client API extensions outside the
72002f4aeb0Sopenharmony_ci            scope of this document (such as
72102f4aeb0Sopenharmony_ci            <code class="constant">GL_OES_EGL_image</code>, which creates OpenGL ES
72202f4aeb0Sopenharmony_ci            texture and renderbuffer objects). If the <span class="type">EGLImage</span>
72302f4aeb0Sopenharmony_ci            used to create the client resource was created with the
72402f4aeb0Sopenharmony_ci            <code class="constant">EGL_IMAGE_PRESERVED</code> attribute set to
72502f4aeb0Sopenharmony_ci            <code class="constant">EGL_TRUE</code>, then the pixel data values
72602f4aeb0Sopenharmony_ci            associated with the image will be preserved after creating the
72702f4aeb0Sopenharmony_ci            client resource; otherwise, the pixel data values will be
72802f4aeb0Sopenharmony_ci            undefined. If the <span class="type">EGLImage</span> was created with the
72902f4aeb0Sopenharmony_ci            <code class="constant">EGL_IMAGE_PRESERVED</code> attribute set to
73002f4aeb0Sopenharmony_ci            <code class="constant">EGL_TRUE</code>, and EGL is unable to create the
73102f4aeb0Sopenharmony_ci            client resource without modifying the pixel values, then
73202f4aeb0Sopenharmony_ci            creation will fail and the pixel data values will be preserved.
73302f4aeb0Sopenharmony_ci        </p>
73402f4aeb0Sopenharmony_ci      </div>
73502f4aeb0Sopenharmony_ci      <div class="refsect1" id="notes">
73602f4aeb0Sopenharmony_ci        <h2>Notes</h2>
73702f4aeb0Sopenharmony_ci        <p>
73802f4aeb0Sopenharmony_ci            <code class="function">eglCreateImage</code> is available only if the EGL
73902f4aeb0Sopenharmony_ci            version is 1.5 or greater.
74002f4aeb0Sopenharmony_ci        </p>
74102f4aeb0Sopenharmony_ci      </div>
74202f4aeb0Sopenharmony_ci      <div class="refsect1" id="seealso">
74302f4aeb0Sopenharmony_ci        <h2>See Also</h2>
74402f4aeb0Sopenharmony_ci        <p>
74502f4aeb0Sopenharmony_ci            <a class="citerefentry" href="eglBindTexImage.xhtml"><span class="citerefentry"><span class="refentrytitle">eglBindTexImage</span></span></a>,
74602f4aeb0Sopenharmony_ci            <a class="citerefentry" href="eglCreatePbufferFromClientBuffer.xhtml"><span class="citerefentry"><span class="refentrytitle">eglCreatePbufferFromClientBuffer</span></span></a>,
74702f4aeb0Sopenharmony_ci            <a class="citerefentry" href="eglDestroyImage.xhtml"><span class="citerefentry"><span class="refentrytitle">eglDestroyImage</span></span></a>,
74802f4aeb0Sopenharmony_ci            <code class="function">glDeleteTextures</code>,
74902f4aeb0Sopenharmony_ci            <code class="function">glTexImage*</code>,
75002f4aeb0Sopenharmony_ci            <code class="function">glTexSubImage2D</code>
75102f4aeb0Sopenharmony_ci        </p>
75202f4aeb0Sopenharmony_ci      </div>
75302f4aeb0Sopenharmony_ci      <p>
75402f4aeb0Sopenharmony_ci    </p>
75502f4aeb0Sopenharmony_ci      <div class="refsect3" id="copyright">
75602f4aeb0Sopenharmony_ci        <img src="KhronosLogo.jpg"/>
75702f4aeb0Sopenharmony_ci        <p>
75802f4aeb0Sopenharmony_ci            Copyright © 2003-2014 The Khronos Group Inc.
75902f4aeb0Sopenharmony_ci            Permission is hereby granted, free of charge, to any person obtaining a
76002f4aeb0Sopenharmony_ci            copy of this software and/or associated documentation files (the
76102f4aeb0Sopenharmony_ci            "Materials"), to deal in the Materials without restriction, including
76202f4aeb0Sopenharmony_ci            without limitation the rights to use, copy, modify, merge, publish,
76302f4aeb0Sopenharmony_ci            distribute, sublicense, and/or sell copies of the Materials, and to
76402f4aeb0Sopenharmony_ci            permit persons to whom the Materials are furnished to do so, subject to
76502f4aeb0Sopenharmony_ci            the condition that this copyright notice and permission notice shall be included
76602f4aeb0Sopenharmony_ci            in all copies or substantial portions of the Materials.
76702f4aeb0Sopenharmony_ci        </p>
76802f4aeb0Sopenharmony_ci      </div>
76902f4aeb0Sopenharmony_ci      <p>
77002f4aeb0Sopenharmony_ci</p>
77102f4aeb0Sopenharmony_ci    </div>
77202f4aeb0Sopenharmony_ci    <footer/>
77302f4aeb0Sopenharmony_ci  </body>
77402f4aeb0Sopenharmony_ci</html>
775