• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "xhtml1-transitional.dtd">
3<!-- saved from url=(0013)about:internet -->
4<?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" xmlns:xlink="http://www.w3.org/1999/xlink" pref:renderer="mathplayer-dl">
5  <head>
6    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
7    <style xmlns="" type="text/css">
8    /* This style sets a margin around the entire page */
9        html, body {
10            margin: 10px;
11        }
12
13        p {
14            font: normal 16px verdana, sans-serif;
15            margin: 0;
16            padding-bottom:12px;
17        }
18
19        h1 {
20            font: bold 25px verdana, sans-serif;
21            margin-top: 0;
22            margin-bottom: 3px;
23            padding-top: 0;
24            padding-bottom: 0;
25        }
26
27        h2 {
28            font: bold 19px verdana, sans-serif;
29            margin-top: 28px;
30            margin-bottom: 3px;
31            padding-top: 0;
32            padding-bottom: 0;
33        }
34
35        h3 {
36            font: bold 19px verdana, sans-serif !important;
37            margin-top: 28px;
38            margin-bottom: 3px;
39            padding-top: 0;
40            padding-bottom: 0;
41        }
42
43        li {
44            font: normal 16px verdana, sans-serif;
45            margin-top: 0;
46            margin-bottom: 18px;
47            padding-top: 0;
48            padding-bottom: 0;
49        }
50
51        .pdparam {
52            font: italic 16px verdana, sans-serif;
53        }
54
55                .term {
56                        font: italic 16px verdana, sans-serif;
57                        font-weight: normal;
58                }
59
60                .type {
61                        font: normal 16px verdana, sans-serif !important;
62                }
63
64                .parameter {
65                        font-style: italic;
66                        }
67
68        a:link, a:visited {
69            color: blue;
70            text-decoration: none;
71            font: normal 16px;
72        }
73
74        a:hover {
75            background-color: #FFFF99;
76            font: normal 16px;
77        }
78
79        div.funcsynopsis {
80            text-align: left;
81            background-color: #e6e6e6;
82            font: normal 16px verdana, sans-serif;
83                        padding-top: 10px;
84                        padding-bottom: 10px;
85        }
86
87        div.funcsynopsis table {
88            border-collapse: separate;
89            font: normal 16px verdana, sans-serif;
90        }
91
92        div.funcsynopsis td {
93            background-color: #e6e6e6;
94            border: 0 solid #000;
95            padding: 1px;
96            font: normal 16px verdana, sans-serif;
97        }
98
99        div.refsect1 {
100            font-family: verdana, sans-serif;
101            font-size: 16px;
102        }
103
104        code.constant {
105            font: normal 16px courier new, monospace !important;
106        }
107
108                span.errorname {
109            font: normal 16px verdana, sans-serif !important;
110        }
111
112        code.function {
113            font: bold 16px verdana, sans-serif !important;
114        }
115
116        b.fsfunc {
117            font: bold 16px verdana, sans-serif !important;
118        }
119
120        code.varname {
121            font: italic 16px verdana, sans-serif;
122        }
123
124        code.replaceable {
125            font: italic 16px courier new, monospace;
126        }
127
128        code.funcdef {
129            font: normal 16px verdana, sans-serif !important;
130        }
131
132        .citerefentry {
133            font: normal 16px verdana, sans-serif !important;
134        }
135
136        .parameter {
137            font-style: italic;
138        }
139
140        code.fsfunc {
141            font: normal 16px verdana, sans-serif !important;
142        }
143
144        /* PARAMETER: This style controls spacing between the terms in Parameter section */
145        dt {
146            margin-top: 15px;
147        }
148
149        /* TABLES: These styles apply to all tables OTHER than the Synopsis and Example tables */
150        div.refsect1 table {
151            width: 100%;
152                        margin-top: 10px;
153            background-color: #FFF;
154                        border-collapse: collapse;
155                        border-color: #000;
156            border-width: 1px;
157                        font: normal 16px verdana, sans-serif;
158        }
159
160        div.refsect1 th {
161                        border-collapse: collapse;
162                        border-color: #000;
163            border-width: 1px;
164            font: bold 16px verdana, sans-serif;
165        }
166
167        div.refsect1 td {
168            background-color: #FFF;
169            padding: 5px;
170            vertical-align: text-top;
171                        border-collapse: collapse;
172                        border-color: #000;
173            border-width: 1px;
174            font: normal 16px verdana, sans-serif;
175        }
176
177                  div.refsect1 p{
178            font: normal 16px verdana, sans-serif;
179            margin-top: 8px;
180            margin-bottom: 8px;
181            padding-top: 0;
182            padding-bottom: 0;
183        }
184
185
186        /* EXAMPLE: These styles apply only to the Example section */
187        div.refsect2 {
188            font: normal 16px courier new, monospace !important;
189        }
190
191        div.refsect2 table {
192            margin-top: 0;
193            background-color: #e6e6e6;
194            width: 100%;
195            border: 0 solid #000;
196            padding: 2px;
197            font: normal 16px courier new, monospace !important;
198        }
199
200        div.refsect2 td {
201            background-color: #e6e6e6;
202            font: normal 16px courier new, monospace !important;
203                        white-space:pre;
204        }
205
206        /* COPYRIGHT: This style formats the text of the copyright statement at the bottom of the page */
207        div.refsect3 {
208            font: normal 11px verdana, sans-serif;
209            margin-top: 50px;
210            margin-bottom: 20px;
211            padding-top: 0;
212            padding-bottom: 0;
213        }
214
215</style>
216    <title>eglSwapBuffers</title>
217    <meta name="generator" content="DocBook XSL Stylesheets V1.78.1" />
218  </head>
219  <body>
220    <div class="refentry">
221      <a id="eglSwapBuffers"></a>
222      <div class="titlepage"></div>
223      <div xmlns="" class="refnamediv">
224        <h1>eglSwapBuffers</h1>
225        <p>
226            post <acronym xmlns="http://www.w3.org/1999/xhtml" class="acronym">EGL</acronym> surface color buffer to a native window
227        </p>
228      </div>
229      <div class="refsynopsisdiv">
230        <h2>C Specification</h2>
231        <div class="funcsynopsis">
232          <table xmlns="" border="0" summary="Function synopsis" cellspacing="0" cellpadding="0">
233            <tr valign="bottom">
234              <td>
235                <code xmlns="http://www.w3.org/1999/xhtml" class="funcdef">EGLBoolean <strong class="fsfunc">eglSwapBuffers</strong>(</code>
236                <td>EGLDisplay  <var xmlns="http://www.w3.org/1999/xhtml" class="pdparam">display</var>, </td>
237              </td>
238            </tr>
239            <tr valign="top">
240              <td> </td>
241              <td>EGLSurface  <var xmlns="http://www.w3.org/1999/xhtml" class="pdparam">surface</var><code>)</code></td>
242            </tr>
243          </table>
244        </div>
245      </div>
246      <div class="refsect1">
247        <a id="parameters"></a>
248        <h2>Parameters</h2>
249        <div class="variablelist">
250          <dl class="variablelist">
251            <dt>
252              <span class="term">
253                <em class="parameter">
254                  <code>display</code>
255                </em>
256              </span>
257            </dt>
258            <dd>
259              <p>
260                        Specifies the EGL display connection.
261                    </p>
262            </dd>
263            <dt>
264              <span class="term">
265                <em class="parameter">
266                  <code>surface</code>
267                </em>
268              </span>
269            </dt>
270            <dd>
271              <p>
272                        Specifies the EGL drawing surface whose buffers are to be swapped.
273                    </p>
274            </dd>
275          </dl>
276        </div>
277      </div>
278      <div class="refsect1">
279        <a id="description"></a>
280        <h2>Description</h2>
281        <p>
282            If <em class="parameter"><code>surface</code></em> is a window surface,
283            <code class="function">eglSwapBuffers</code> posts its color buffer
284            to the associated native window.
285        </p>
286        <p>
287            The contents of ancillary buffers are always undefined after
288            calling <code class="function">eglSwapBuffers</code>. The contents of
289            the color buffer are left unchanged if the value of the
290            <code class="constant">EGL_SWAP_BEHAVIOR</code> attribute of
291            <em class="parameter"><code>surface</code></em> is
292            <code class="constant">EGL_BUFFER_PRESERVED</code>, and are undefined
293            if the value is <code class="constant">EGL_BUFFER_DESTROYED</code>.
294            The value of <code class="constant">EGL_SWAP_BEHAVIOR</code> can be
295            set for some surfaces using
296            <a class="citerefentry" href="eglSurfaceAttrib.html"><span class="citerefentry"><span class="refentrytitle">eglSurfaceAttrib</span></span></a>.
297        </p>
298        <p>
299            <code class="function">eglSwapBuffers</code> performs an implicit
300            flush operation on the context (<code class="function">glFlush</code>
301            for an OpenGL ES or OpenGL context,
302            <code class="function">vgFlush</code> for an OpenVG context) bound to
303            <em class="parameter"><code>surface</code></em> before swapping. Subsequent
304            client API commands may be issued on that context
305            immediately after calling
306            <code class="function">eglSwapBuffers</code>, but are not executed
307            until the buffer exchange is completed.
308        </p>
309        <p>
310            If <em class="parameter"><code>surface</code></em> is a pixel buffer or a pixmap,
311            <code class="function">eglSwapBuffers</code>
312            has no effect, and no error is generated.
313        </p>
314      </div>
315      <div class="refsect1">
316        <a id="notes"></a>
317        <h2>Notes</h2>
318        <p>
319            Attribute <code class="constant">EGL_SWAP_BEHAVIOR</code> is
320            supported only if the EGL version is 1.2 or greater. In
321            earlier versions, behavior is as though the attribute
322            exists, and always has the value
323            <code class="constant">EGL_BUFFER_DESTROYED</code>.
324        </p>
325        <p>
326            The EGL 1.4 specification was updated to acknowledge that
327            ancillary buffers are not necessarily preserved after a
328            swap, and that the <code class="constant">EGL_SWAP_BEHAVIOR</code>
329            attribute applies only to the color buffer. This change in
330            the specification acknowledged the behavior of many shipping
331            implementations, and is not intended to result in behavior
332            changes in any existing implementation. Applications which
333            require preservation of ancillary buffers across a swap
334            should be aware that not all implementations can preserve
335            them, and that EGL 1.4 has no way to query whether or not
336            they are preserved.
337        </p>
338      </div>
339      <div class="refsect1">
340        <a id="errors"></a>
341        <h2>Errors</h2>
342        <p>
343            <code class="constant">EGL_FALSE</code> is returned if swapping of the
344            surface buffers fails, <code class="constant">EGL_TRUE</code> otherwise.
345        </p>
346        <p>
347            <code class="constant">EGL_BAD_DISPLAY</code> is generated if
348            <em class="parameter"><code>display</code></em> is not an EGL display connection.
349        </p>
350        <p>
351            <code class="constant">EGL_NOT_INITIALIZED</code> is generated if
352            <em class="parameter"><code>display</code></em> has not been initialized.
353        </p>
354        <p>
355            <code class="constant">EGL_BAD_SURFACE</code> is generated if
356            <em class="parameter"><code>surface</code></em> is not an EGL drawing surface.
357        </p>
358        <p>
359            <code class="constant">EGL_CONTEXT_LOST</code> is generated if a power management
360            event has occurred. The application must destroy all contexts and
361            reinitialise OpenGL ES state and objects to continue rendering.
362        </p>
363      </div>
364      <div class="refsect1">
365        <a id="seealso"></a>
366        <h2>See Also</h2>
367        <p>
368            <a class="citerefentry" href="glFlush.html"><span class="citerefentry"><span class="refentrytitle">glFlush</span></span></a>,
369            <a class="citerefentry" href="eglCopyBuffers.html"><span class="citerefentry"><span class="refentrytitle">eglCopyBuffers</span></span></a>
370        </p>
371      </div>
372      <div xmlns="" class="refsect3" lang="en" xml:lang="en"><a xmlns="http://www.w3.org/1999/xhtml" id="Copyright"></a><h4 xmlns="http://www.w3.org/1999/xhtml"></h4><img xmlns="http://www.w3.org/1999/xhtml" src="KhronosLogo.jpg" /><p xmlns="http://www.w3.org/1999/xhtml"></p>
373Copyright © 2003-2014 The Khronos Group Inc.
374Permission is hereby granted, free of charge, to any person obtaining a
375copy of this software and/or associated documentation files (the
376"Materials"), to deal in the Materials without restriction, including
377without limitation the rights to use, copy, modify, merge, publish,
378distribute, sublicense, and/or sell copies of the Materials, and to
379permit persons to whom the Materials are furnished to do so, subject to
380the condition that this copyright notice and permission notice shall be included
381in all copies or substantial portions of the Materials.
382</div>
383    </div>
384  </body>
385</html>
386