<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
                            "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry xml:base="" id="eglCreateWindowSurface">
    <refentryinfo>
         <copyright>
             <year>2003-2014</year>
             <holder>The Khronos Group Inc.</holder>
         </copyright>
    </refentryinfo>
    <refmeta>
        <refentrytitle>eglCreateWindowSurface</refentrytitle>
        <manvolnum>3G</manvolnum>
    </refmeta>
    <refnamediv>
        <refname>eglCreateWindowSurface</refname>
        <refpurpose>
            create a new <acronym>EGL</acronym> window surface
        </refpurpose>
    </refnamediv>
    <refsynopsisdiv>
        <title>C Specification</title>
        <funcsynopsis>
            <funcprototype>
                <funcdef>EGLSurface <function>eglCreateWindowSurface</function></funcdef>
                <paramdef>EGLDisplay <parameter>display</parameter></paramdef>
                <paramdef>EGLConfig <parameter>config</parameter></paramdef>
                <paramdef>NativeWindowType <parameter>native_window</parameter></paramdef>
                <paramdef>EGLint const * <parameter>attrib_list</parameter></paramdef>
            </funcprototype>
        </funcsynopsis>
    </refsynopsisdiv>
    <refsect1 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>config</parameter></term>
                <listitem>
                    <para>Specifies the EGL frame buffer configuration that defines the
                    frame buffer resource available to the surface.</para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term><parameter>native_window</parameter></term>
                <listitem><para>Specifies the native window.</para></listitem>
            </varlistentry>
            <varlistentry>
                <term><parameter>attrib_list</parameter></term>
                <listitem><para>
                    Specifies window surface attributes.
                    May be <constant>NULL</constant> or empty
                    (first attribute is <constant>EGL_NONE</constant>).
                </para></listitem>
            </varlistentry>
        </variablelist>
    </refsect1>
    <refsect1 id="description"><title>Description</title>
        <para>
            <function>eglCreateWindowSurface</function> creates an EGL
            window surface and returns its handle. If
            <function>eglCreateWindowSurface</function> fails to create
            a window surface, <constant>EGL_NO_SURFACE</constant> is
            returned.
        </para>
        <para>
            Surface attributes are specified as a list of
            attribute-value pairs, terminated with
            <constant>EGL_NONE</constant>. Accepted attributes
            are:
        </para>
        <variablelist>
            <varlistentry>
                <term><constant>EGL_RENDER_BUFFER</constant></term>
                <listitem>
                <para>
                    Specifies which buffer should be used for client API
                    rendering to the window. If its value is
                    <constant>EGL_SINGLE_BUFFER</constant>, then client
                    APIs should render directly into the visible window.
                    If its value is
                    <constant>EGL_BACK_BUFFER</constant>, then client
                    APIs should render into the back buffer. The default
                    value of <constant>EGL_RENDER_BUFFER</constant> is
                    <constant>EGL_BACK_BUFFER</constant>.
                </para>
                <para>
                    Client APIs may not be able to respect the requested
                    rendering buffer. To determine the actual buffer
                    being rendered to by a context, call
                    <citerefentry><refentrytitle>eglQueryContext</refentrytitle></citerefentry>.
                </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term><constant>EGL_VG_ALPHA_FORMAT</constant></term>
                <listitem>
                <para>
                    Specifies how alpha values are interpreted by OpenVG
                    when rendering to the surface. If its value is
                    <constant>EGL_VG_ALPHA_FORMAT_NONPRE</constant>,
                    then alpha values are not premultipled. If its value
                    is <constant>EGL_VG_ALPHA_FORMAT_PRE</constant>,
                    then alpha values are premultiplied. The default
                    value of <constant>EGL_VG_ALPHA_FORMAT</constant> is
                    <constant>EGL_VG_ALPHA_FORMAT_NONPRE</constant>.
                </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term><constant>EGL_VG_COLORSPACE</constant></term>
                <listitem>
                <para>
                    Specifies the color space used by OpenVG when
                    rendering to the surface. If its value is
                    <constant>EGL_VG_COLORSPACE_sRGB</constant>, then a
                    non-linear, perceptually uniform color space is
                    assumed, with a corresponding
                    <type>VGImageFormat</type> of form
                    <constant>VG_s*</constant>. If its value is
                    <constant>EGL_VG_COLORSPACE_LINEAR</constant>, then
                    a linear color space is assumed, with a
                    corresponding <type>VGImageFormat</type> of form
                    <constant>VG_l*</constant>. The default value of
                    <constant>EGL_VG_COLORSPACE</constant> is
                    <constant>EGL_VG_COLORSPACE_sRGB</constant>.
                </para>
                </listitem>
            </varlistentry>
        </variablelist>
        <para>
            Any EGL rendering context that was created with respect to
            <parameter>config</parameter> can be used to render into the
            surface. Use
            <citerefentry><refentrytitle>eglMakeCurrent</refentrytitle></citerefentry>
            to attach an EGL rendering context to the surface.
        </para>
        <para>
            Use
            <citerefentry><refentrytitle>eglQuerySurface</refentrytitle></citerefentry>
            to retrieve the ID of <parameter>config</parameter>.
        </para>
        <para>
            Use
            <citerefentry><refentrytitle>eglDestroySurface</refentrytitle></citerefentry>
            to destroy the surface.
        </para>
    </refsect1>
    <refsect1 id="notes"><title>Notes</title>
        <para>
            Attributes <constant>EGL_RENDER_BUFFER</constant>,
            <constant>EGL_VG_ALPHA_FORMAT</constant>, and
            <constant>EGL_VG_COLORSPACE</constant>, and the
            corresponding attribute values, are supported only if the
            EGL version is 1.2 or greater.
        </para>
        <!-- Might want to mention aliasing of EGL_VG_* -> EGL_* that occurred in EGL 1.3 -->
        <para>
            The <constant>EGL_VG_ALPHA_FORMAT</constant> and
            <constant>EGL_VG_COLORSPACE</constant> attributes are used
            only by OpenVG. EGL itself, and other client APIs such as
            OpenGL and OpenGL ES , do not distinguish multiple
            colorspace models. Refer to section 11.2 of the OpenVG 1.0
            specification for more information. The native window
            system's use and interpretation of alpha values is outside
            the scope of EGL, although the preferred behavior is for the
            window system to ignore the value of
            <constant>EGL_VG_ALPHA_FORMAT</constant> when compositing
            window surfaces.
        </para>
    </refsect1>
    <refsect1 id="errors"><title>Errors</title>
        <para>
            <constant>EGL_NO_SURFACE</constant> is returned if creation of
            the context fails.
        </para>
        <para>
            <constant>EGL_BAD_DISPLAY</constant> is generated if
            <parameter>display</parameter> is not an EGL display connection.
        </para>
        <para>
            <constant>EGL_NOT_INITIALIZED</constant> is generated if
            <parameter>display</parameter> has not been initialized.
        </para>
        <para>
            <constant>EGL_BAD_CONFIG</constant> is generated if
            <parameter>config</parameter> is not an EGL frame buffer configuration.
        </para>
        <para>
            <constant>EGL_BAD_NATIVE_WINDOW</constant> may be generated if
            <parameter>native_window</parameter> is not a valid native window.
        </para>
        <para>
            <constant>EGL_BAD_ATTRIBUTE</constant> is generated if
            <parameter>attrib_list</parameter> contains an invalid window attribute
            or if an attribute value is not recognized or is out of range.
        </para>
        <para>
            <constant>EGL_BAD_ALLOC</constant> is generated if there are not
            enough resources to allocate the new surface.
        </para>
        <para>
            <constant>EGL_BAD_MATCH</constant> is generated if the attributes of
            <parameter>native_window</parameter> do not correspond to
            <parameter>config</parameter> or if
            <parameter>config</parameter> does not support rendering to windows
            (the <constant>EGL_SURFACE_TYPE</constant> attribute does not contain
            <constant>EGL_WINDOW_BIT</constant>).
        </para>
        <para>
            <constant>EGL_BAD_MATCH</constant> is generated if
            <parameter>config</parameter> does not support the specified
            OpenVG alpha format attribute (the value of
            <constant>EGL_VG_ALPHA_FORMAT</constant> is
            <constant>EGL_VG_ALPHA_FORMAT_PRE</constant> and the
            <constant>EGL_VG_ALPHA_FORMAT_PRE_BIT</constant> is not set
            in the <constant>EGL_SURFACE_TYPE</constant> attribute of
            <parameter>config</parameter>) or colorspace attribute (the
            value of <constant>EGL_VG_COLORSPACE</constant> is
            <constant>EGL_VG_COLORSPACE_LINEAR</constant> and the
            <constant>EGL_VG_COLORSPACE_LINEAR_IT</constant> is not set
            in the <constant>EGL_SURFACE_TYPE</constant> attribute of
            <parameter>config</parameter>).
        </para>
    </refsect1>
    <refsect1 id="seealso"><title>See Also</title>
        <para>
            <citerefentry><refentrytitle>eglDestroySurface</refentrytitle></citerefentry>,
            <citerefentry><refentrytitle>eglChooseConfig</refentrytitle></citerefentry>,
            <citerefentry><refentrytitle>eglGetConfigs</refentrytitle></citerefentry>,
            <citerefentry><refentrytitle>eglMakeCurrent</refentrytitle></citerefentry>,
            <citerefentry><refentrytitle>eglQuerySurface</refentrytitle></citerefentry>
        </para>
    </refsect1>
    <refsect3 id="Copyright"><title></title>
        <!-- Content included from copyright.inc.xsl -->
        <imageobject>
                <imagedata fileref="KhronosLogo.jpg" format="jpg" />
        </imageobject>
        <para />
    </refsect3>
</refentry>
