blob: a6add82b7455ab203cd9f2b735aa417145c5336f [file] [log] [blame]
<refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xml:base="" xml:id="eglSwapInterval">
<info>
<copyright>
<year>2003-2014</year>
<holder>The Khronos Group Inc.</holder>
</copyright>
</info>
<refmeta>
<refentrytitle>eglSwapInterval</refentrytitle>
<manvolnum>3G</manvolnum>
</refmeta>
<refnamediv>
<refname>eglSwapInterval</refname>
<refpurpose>
specifies the minimum number of video frame periods
per buffer swap for the window associated with the current context.
</refpurpose>
</refnamediv>
<refsynopsisdiv>
<title>C Specification</title>
<funcsynopsis>
<funcprototype>
<funcdef>EGLBoolean <function>eglSwapInterval</function></funcdef>
<paramdef>EGLDisplay <parameter>display</parameter></paramdef>
<paramdef>EGLint <parameter>interval</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsect1 xml:id="parameters"><title>Parameters</title>
<variablelist>
<varlistentry>
<term><parameter>display</parameter></term>
<listitem>
<para>
Specifies the EGL display connection.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>interval</parameter></term>
<listitem>
<para>
Specifies the minimum number of video frames that are displayed before
a buffer swap will occur.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 xml:id="description"><title>Description</title>
<para>
The interval takes effect when <citerefentry><refentrytitle>eglSwapBuffers</refentrytitle></citerefentry> is
first called subsequent to the <function>eglSwapInterval</function> call.
</para>
<para>
The <parameter>interval</parameter> specified by the function applies to the draw surface
bound to the context that is current on the calling thread.
</para>
<para>
If <parameter>interval</parameter> is set to a value of <constant>0</constant>, buffer swaps are not synchronized to a
video frame, and the swap happens as soon as the render is complete. interval
is silently clamped to minimum and maximum implementation dependent
valuesbefore being stored; these values are defined by <type>EGLConfig</type> attributes
<constant>EGL_MIN_SWAP_INTERVAL</constant> and <constant>EGL_MAX_SWAP_INTERVAL</constant> respectively.
</para>
</refsect1>
<refsect1 xml:id="notes"><title>Notes</title>
<para>
The swap interval has no effect on <citerefentry><refentrytitle>eglCopyBuffers</refentrytitle></citerefentry>.
</para>
<para>
The default swap interval is 1.
</para>
</refsect1>
<refsect1 xml:id="errors"><title>Errors</title>
<para>
<constant>EGL_FALSE</constant> is returned on failure, <constant>EGL_TRUE</constant> otherwise.
</para>
<para>
<constant>EGL_BAD_CONTEXT</constant> is generated if there is no current context
on the calling thread.
</para>
<para>
<constant>EGL_BAD_SURFACE</constant> is generated if there is no surface
bound to the current context.
</para>
</refsect1>
<refsect1 xml:id="seealso"><title>See Also</title>
<para>
<citerefentry><refentrytitle>eglSwapBuffers</refentrytitle></citerefentry>
</para>
</refsect1>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="copyright.xml"/>
</refentry>