<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Gdk" version="2.0"/>
  <namespace name="GdkGLExt"
             version="1.0"
             shared-library="libgdkglext-x11-1.0.so.0.0"
             c:identifier-prefixes="GdkGL"
             c:symbol-prefixes="gdk_gl,gdk">
    <constant name="ATTRIB_LIST_NONE"
              value="0"
              c:type="GDK_GL_ATTRIB_LIST_NONE">
      <source-position filename="gdkgltokens.h" line="34"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <bitfield name="BufferMask"
              glib:type-name="GdkGLBufferMask"
              glib:get-type="gdk_gl_buffer_mask_get_type"
              c:type="GdkGLBufferMask">
      <member name="front_left_buffer_bit"
              value="1"
              c:identifier="GDK_GL_FRONT_LEFT_BUFFER_BIT"
              glib:nick="front-left-buffer-bit"
              glib:name="GDK_GL_FRONT_LEFT_BUFFER_BIT">
      </member>
      <member name="front_right_buffer_bit"
              value="2"
              c:identifier="GDK_GL_FRONT_RIGHT_BUFFER_BIT"
              glib:nick="front-right-buffer-bit"
              glib:name="GDK_GL_FRONT_RIGHT_BUFFER_BIT">
      </member>
      <member name="back_left_buffer_bit"
              value="4"
              c:identifier="GDK_GL_BACK_LEFT_BUFFER_BIT"
              glib:nick="back-left-buffer-bit"
              glib:name="GDK_GL_BACK_LEFT_BUFFER_BIT">
      </member>
      <member name="back_right_buffer_bit"
              value="8"
              c:identifier="GDK_GL_BACK_RIGHT_BUFFER_BIT"
              glib:nick="back-right-buffer-bit"
              glib:name="GDK_GL_BACK_RIGHT_BUFFER_BIT">
      </member>
      <member name="aux_buffers_bit"
              value="16"
              c:identifier="GDK_GL_AUX_BUFFERS_BIT"
              glib:nick="aux-buffers-bit"
              glib:name="GDK_GL_AUX_BUFFERS_BIT">
      </member>
      <member name="depth_buffer_bit"
              value="32"
              c:identifier="GDK_GL_DEPTH_BUFFER_BIT"
              glib:nick="depth-buffer-bit"
              glib:name="GDK_GL_DEPTH_BUFFER_BIT">
      </member>
      <member name="stencil_buffer_bit"
              value="64"
              c:identifier="GDK_GL_STENCIL_BUFFER_BIT"
              glib:nick="stencil-buffer-bit"
              glib:name="GDK_GL_STENCIL_BUFFER_BIT">
      </member>
      <member name="accum_buffer_bit"
              value="128"
              c:identifier="GDK_GL_ACCUM_BUFFER_BIT"
              glib:nick="accum-buffer-bit"
              glib:name="GDK_GL_ACCUM_BUFFER_BIT">
      </member>
    </bitfield>
    <function-macro name="CONFIG"
                    c:identifier="GDK_GL_CONFIG"
                    introspectable="0">
      <source-position filename="gdkglconfig.h" line="50"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="CONFIG_CLASS"
                    c:identifier="GDK_GL_CONFIG_CLASS"
                    introspectable="0">
      <source-position filename="gdkglconfig.h" line="51"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="CONFIG_GET_CLASS"
                    c:identifier="GDK_GL_CONFIG_GET_CLASS"
                    introspectable="0">
      <source-position filename="gdkglconfig.h" line="54"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="CONTEXT"
                    c:identifier="GDK_GL_CONTEXT"
                    introspectable="0">
      <source-position filename="gdkglcontext.h" line="30"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="CONTEXT_CLASS"
                    c:identifier="GDK_GL_CONTEXT_CLASS"
                    introspectable="0">
      <source-position filename="gdkglcontext.h" line="31"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="CONTEXT_GET_CLASS"
                    c:identifier="GDK_GL_CONTEXT_GET_CLASS"
                    introspectable="0">
      <source-position filename="gdkglcontext.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Config"
           c:symbol-prefix="config"
           c:type="GdkGLConfig"
           parent="GObject.Object"
           glib:type-name="GdkGLConfig"
           glib:get-type="gdk_gl_config_get_type"
           glib:type-struct="ConfigClass">
      <source-position filename="gdkglconfig.h" line="79"/>
      <constructor name="new" c:identifier="gdk_gl_config_new">
        <doc xml:space="preserve"
             filename="x11/gdkglconfig-x11.c"
             line="440">Returns an OpenGL frame buffer configuration that match the specified
attributes.

attrib_list is a int array that contains the attribute/value pairs.
Available attributes are:
GDK_GL_USE_GL, GDK_GL_BUFFER_SIZE, GDK_GL_LEVEL, GDK_GL_RGBA,
GDK_GL_DOUBLEBUFFER, GDK_GL_STEREO, GDK_GL_AUX_BUFFERS,
GDK_GL_RED_SIZE, GDK_GL_GREEN_SIZE, GDK_GL_BLUE_SIZE, GDK_GL_ALPHA_SIZE,
GDK_GL_DEPTH_SIZE, GDK_GL_STENCIL_SIZE, GDK_GL_ACCUM_RED_SIZE,
GDK_GL_ACCUM_GREEN_SIZE, GDK_GL_ACCUM_BLUE_SIZE, GDK_GL_ACCUM_ALPHA_SIZE.</doc>
        <source-position filename="gdkglconfig.h" line="84"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="x11/gdkglconfig-x11.c"
               line="456">the new #GdkGLConfig.</doc>
          <type name="Config" c:type="GdkGLConfig*"/>
        </return-value>
        <parameters>
          <parameter name="attrib_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="442">a list of attribute/value pairs. The last attribute must
              be GDK_GL_ATTRIB_LIST_NONE.</doc>
            <array zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_by_mode" c:identifier="gdk_gl_config_new_by_mode">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="192">Returns an OpenGL frame buffer configuration that match the specified
display mode.</doc>
        <source-position filename="gdkglconfig.h" line="91"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="199">the new #GdkGLConfig.</doc>
          <type name="Config" c:type="GdkGLConfig*"/>
        </return-value>
        <parameters>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="194">display mode bit mask.</doc>
            <type name="ConfigMode" c:type="GdkGLConfigMode"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_by_mode_for_screen"
                   c:identifier="gdk_gl_config_new_by_mode_for_screen">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="211">Returns an OpenGL frame buffer configuration that match the specified
display mode.</doc>
        <source-position filename="gdkglconfig.h" line="94"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="219">the new #GdkGLConfig.</doc>
          <type name="Config" c:type="GdkGLConfig*"/>
        </return-value>
        <parameters>
          <parameter name="screen" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="213">target screen.</doc>
            <type name="Gdk.Screen" c:type="GdkScreen*"/>
          </parameter>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="214">display mode bit mask.</doc>
            <type name="ConfigMode" c:type="GdkGLConfigMode"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_screen"
                   c:identifier="gdk_gl_config_new_for_screen">
        <doc xml:space="preserve"
             filename="x11/gdkglconfig-x11.c"
             line="472">Returns an OpenGL frame buffer configuration that match the specified
attributes.</doc>
        <source-position filename="gdkglconfig.h" line="87"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="x11/gdkglconfig-x11.c"
               line="481">the new #GdkGLConfig.</doc>
          <type name="Config" c:type="GdkGLConfig*"/>
        </return-value>
        <parameters>
          <parameter name="screen" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="474">target screen.</doc>
            <type name="Gdk.Screen" c:type="GdkScreen*"/>
          </parameter>
          <parameter name="attrib_list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="475">a list of attribute/value pairs. The last attribute must
              be GDK_GL_ATTRIB_LIST_NONE.</doc>
            <array zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_attrib" c:identifier="gdk_gl_config_get_attrib">
        <doc xml:space="preserve"
             filename="x11/gdkglconfig-x11.c"
             line="665">Gets information about a OpenGL frame buffer configuration.</doc>
        <source-position filename="gdkglconfig.h" line="99"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglconfig-x11.c"
               line="673">TRUE if it succeeded, FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="667">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
          <parameter name="attribute" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="668">the attribute to be returned.</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="value"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="669">returns the requested value.</doc>
            <type name="gint" c:type="int*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_colormap" c:identifier="gdk_gl_config_get_colormap">
        <doc xml:space="preserve"
             filename="x11/gdkglconfig-x11.c"
             line="692">Gets the #GdkColormap that is appropriate for the OpenGL frame buffer
configuration.</doc>
        <source-position filename="gdkglconfig.h" line="103"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglconfig-x11.c"
               line="699">the appropriate #GdkColormap.</doc>
          <type name="Gdk.Colormap" c:type="GdkColormap*"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="694">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_depth" c:identifier="gdk_gl_config_get_depth">
        <doc xml:space="preserve"
             filename="x11/gdkglconfig-x11.c"
             line="726">Gets the color depth of the OpenGL-capable visual.</doc>
        <source-position filename="gdkglconfig.h" line="107"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglconfig-x11.c"
               line="732">number of bits per pixel</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="728">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_layer_plane"
              c:identifier="gdk_gl_config_get_layer_plane">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="228">Gets the layer plane (level) of the frame buffer.
Zero is the default frame buffer.
Positive layer planes correspond to frame buffers that overlay the default
buffer, and negative layer planes correspond to frame buffers that underlie
the default frame buffer.</doc>
        <source-position filename="gdkglconfig.h" line="109"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="238">layer plane.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="230">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_n_aux_buffers"
              c:identifier="gdk_gl_config_get_n_aux_buffers">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="248">Gets the number of auxiliary color buffers.</doc>
        <source-position filename="gdkglconfig.h" line="111"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="254">number of auxiliary color buffers.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="250">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_n_sample_buffers"
              c:identifier="gdk_gl_config_get_n_sample_buffers">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="264">Gets the number of multisample buffers.</doc>
        <source-position filename="gdkglconfig.h" line="113"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="270">number of multisample buffers.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="266">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_screen" c:identifier="gdk_gl_config_get_screen">
        <doc xml:space="preserve"
             filename="x11/gdkglconfig-x11.c"
             line="649">Gets #GdkScreen.</doc>
        <source-position filename="gdkglconfig.h" line="97"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglconfig-x11.c"
               line="655">the #GdkScreen.</doc>
          <type name="Gdk.Screen" c:type="GdkScreen*"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="651">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_visual" c:identifier="gdk_gl_config_get_visual">
        <doc xml:space="preserve"
             filename="x11/gdkglconfig-x11.c"
             line="709">Gets the #GdkVisual that is appropriate for the OpenGL frame buffer
configuration.</doc>
        <source-position filename="gdkglconfig.h" line="105"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglconfig-x11.c"
               line="716">the appropriate #GdkVisual.</doc>
          <type name="Gdk.Visual" c:type="GdkVisual*"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglconfig-x11.c"
                 line="711">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_accum_buffer"
              c:identifier="gdk_gl_config_has_accum_buffer">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="378">Returns whether the configured frame buffer has accumulation buffer.</doc>
        <source-position filename="gdkglconfig.h" line="127"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="384">TRUE if the frame buffer has accumulation buffer, FALSE
              otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="380">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_alpha" c:identifier="gdk_gl_config_has_alpha">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="330">Returns whether the configured color buffer has alpha bits.</doc>
        <source-position filename="gdkglconfig.h" line="121"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="336">TRUE if the color buffer has alpha bits, FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="332">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_depth_buffer"
              c:identifier="gdk_gl_config_has_depth_buffer">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="346">Returns whether the configured frame buffer has depth buffer.</doc>
        <source-position filename="gdkglconfig.h" line="123"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="352">TRUE if the frame buffer has depth buffer, FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="348">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_stencil_buffer"
              c:identifier="gdk_gl_config_has_stencil_buffer">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="362">Returns whether the configured frame buffer has stencil buffer.</doc>
        <source-position filename="gdkglconfig.h" line="125"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="368">TRUE if the frame buffer has stencil buffer, FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="364">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_double_buffered"
              c:identifier="gdk_gl_config_is_double_buffered">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="297">Returns whether the configuration supports the double-buffered visual.</doc>
        <source-position filename="gdkglconfig.h" line="117"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="303">TRUE if the double-buffered visual is supported, FALSE
              otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="299">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_rgba" c:identifier="gdk_gl_config_is_rgba">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="280">Returns whether the configured frame buffer is RGBA mode.</doc>
        <source-position filename="gdkglconfig.h" line="115"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="286">TRUE if the configured frame buffer is RGBA mode, FALSE
              otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="282">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_stereo" c:identifier="gdk_gl_config_is_stereo">
        <doc xml:space="preserve"
             filename="gdkglconfig.c"
             line="314">Returns whether the configuration supports the stereo visual.</doc>
        <source-position filename="gdkglconfig.h" line="119"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglconfig.c"
               line="320">TRUE if the stereo visual is supported, FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglconfig.c"
                 line="316">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="layer_plane">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="n_aux_buffers">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="n_sample_buffers">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="is_rgba" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="is_double_buffered" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="as_single_mode" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="is_stereo" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="has_alpha" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="has_depth_buffer" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="has_stencil_buffer" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="has_accum_buffer" bits="1">
        <type name="guint" c:type="guint"/>
      </field>
    </class>
    <enumeration name="ConfigAttrib"
                 glib:type-name="GdkGLConfigAttrib"
                 glib:get-type="gdk_gl_config_attrib_get_type"
                 c:type="GdkGLConfigAttrib">
      <member name="use_gl"
              value="1"
              c:identifier="GDK_GL_USE_GL"
              glib:nick="use-gl"
              glib:name="GDK_GL_USE_GL">
      </member>
      <member name="buffer_size"
              value="2"
              c:identifier="GDK_GL_BUFFER_SIZE"
              glib:nick="buffer-size"
              glib:name="GDK_GL_BUFFER_SIZE">
      </member>
      <member name="level"
              value="3"
              c:identifier="GDK_GL_LEVEL"
              glib:nick="level"
              glib:name="GDK_GL_LEVEL">
      </member>
      <member name="rgba"
              value="4"
              c:identifier="GDK_GL_RGBA"
              glib:nick="rgba"
              glib:name="GDK_GL_RGBA">
      </member>
      <member name="doublebuffer"
              value="5"
              c:identifier="GDK_GL_DOUBLEBUFFER"
              glib:nick="doublebuffer"
              glib:name="GDK_GL_DOUBLEBUFFER">
      </member>
      <member name="stereo"
              value="6"
              c:identifier="GDK_GL_STEREO"
              glib:nick="stereo"
              glib:name="GDK_GL_STEREO">
      </member>
      <member name="aux_buffers"
              value="7"
              c:identifier="GDK_GL_AUX_BUFFERS"
              glib:nick="aux-buffers"
              glib:name="GDK_GL_AUX_BUFFERS">
      </member>
      <member name="red_size"
              value="8"
              c:identifier="GDK_GL_RED_SIZE"
              glib:nick="red-size"
              glib:name="GDK_GL_RED_SIZE">
      </member>
      <member name="green_size"
              value="9"
              c:identifier="GDK_GL_GREEN_SIZE"
              glib:nick="green-size"
              glib:name="GDK_GL_GREEN_SIZE">
      </member>
      <member name="blue_size"
              value="10"
              c:identifier="GDK_GL_BLUE_SIZE"
              glib:nick="blue-size"
              glib:name="GDK_GL_BLUE_SIZE">
      </member>
      <member name="alpha_size"
              value="11"
              c:identifier="GDK_GL_ALPHA_SIZE"
              glib:nick="alpha-size"
              glib:name="GDK_GL_ALPHA_SIZE">
      </member>
      <member name="depth_size"
              value="12"
              c:identifier="GDK_GL_DEPTH_SIZE"
              glib:nick="depth-size"
              glib:name="GDK_GL_DEPTH_SIZE">
      </member>
      <member name="stencil_size"
              value="13"
              c:identifier="GDK_GL_STENCIL_SIZE"
              glib:nick="stencil-size"
              glib:name="GDK_GL_STENCIL_SIZE">
      </member>
      <member name="accum_red_size"
              value="14"
              c:identifier="GDK_GL_ACCUM_RED_SIZE"
              glib:nick="accum-red-size"
              glib:name="GDK_GL_ACCUM_RED_SIZE">
      </member>
      <member name="accum_green_size"
              value="15"
              c:identifier="GDK_GL_ACCUM_GREEN_SIZE"
              glib:nick="accum-green-size"
              glib:name="GDK_GL_ACCUM_GREEN_SIZE">
      </member>
      <member name="accum_blue_size"
              value="16"
              c:identifier="GDK_GL_ACCUM_BLUE_SIZE"
              glib:nick="accum-blue-size"
              glib:name="GDK_GL_ACCUM_BLUE_SIZE">
      </member>
      <member name="accum_alpha_size"
              value="17"
              c:identifier="GDK_GL_ACCUM_ALPHA_SIZE"
              glib:nick="accum-alpha-size"
              glib:name="GDK_GL_ACCUM_ALPHA_SIZE">
      </member>
      <member name="config_caveat"
              value="32"
              c:identifier="GDK_GL_CONFIG_CAVEAT"
              glib:nick="config-caveat"
              glib:name="GDK_GL_CONFIG_CAVEAT">
      </member>
      <member name="x_visual_type"
              value="34"
              c:identifier="GDK_GL_X_VISUAL_TYPE"
              glib:nick="x-visual-type"
              glib:name="GDK_GL_X_VISUAL_TYPE">
      </member>
      <member name="transparent_type"
              value="35"
              c:identifier="GDK_GL_TRANSPARENT_TYPE"
              glib:nick="transparent-type"
              glib:name="GDK_GL_TRANSPARENT_TYPE">
      </member>
      <member name="transparent_index_value"
              value="36"
              c:identifier="GDK_GL_TRANSPARENT_INDEX_VALUE"
              glib:nick="transparent-index-value"
              glib:name="GDK_GL_TRANSPARENT_INDEX_VALUE">
      </member>
      <member name="transparent_red_value"
              value="37"
              c:identifier="GDK_GL_TRANSPARENT_RED_VALUE"
              glib:nick="transparent-red-value"
              glib:name="GDK_GL_TRANSPARENT_RED_VALUE">
      </member>
      <member name="transparent_green_value"
              value="38"
              c:identifier="GDK_GL_TRANSPARENT_GREEN_VALUE"
              glib:nick="transparent-green-value"
              glib:name="GDK_GL_TRANSPARENT_GREEN_VALUE">
      </member>
      <member name="transparent_blue_value"
              value="39"
              c:identifier="GDK_GL_TRANSPARENT_BLUE_VALUE"
              glib:nick="transparent-blue-value"
              glib:name="GDK_GL_TRANSPARENT_BLUE_VALUE">
      </member>
      <member name="transparent_alpha_value"
              value="40"
              c:identifier="GDK_GL_TRANSPARENT_ALPHA_VALUE"
              glib:nick="transparent-alpha-value"
              glib:name="GDK_GL_TRANSPARENT_ALPHA_VALUE">
      </member>
      <member name="drawable_type"
              value="32784"
              c:identifier="GDK_GL_DRAWABLE_TYPE"
              glib:nick="drawable-type"
              glib:name="GDK_GL_DRAWABLE_TYPE">
      </member>
      <member name="render_type"
              value="32785"
              c:identifier="GDK_GL_RENDER_TYPE"
              glib:nick="render-type"
              glib:name="GDK_GL_RENDER_TYPE">
      </member>
      <member name="x_renderable"
              value="32786"
              c:identifier="GDK_GL_X_RENDERABLE"
              glib:nick="x-renderable"
              glib:name="GDK_GL_X_RENDERABLE">
      </member>
      <member name="fbconfig_id"
              value="32787"
              c:identifier="GDK_GL_FBCONFIG_ID"
              glib:nick="fbconfig-id"
              glib:name="GDK_GL_FBCONFIG_ID">
      </member>
      <member name="max_pbuffer_width"
              value="32790"
              c:identifier="GDK_GL_MAX_PBUFFER_WIDTH"
              glib:nick="max-pbuffer-width"
              glib:name="GDK_GL_MAX_PBUFFER_WIDTH">
      </member>
      <member name="max_pbuffer_height"
              value="32791"
              c:identifier="GDK_GL_MAX_PBUFFER_HEIGHT"
              glib:nick="max-pbuffer-height"
              glib:name="GDK_GL_MAX_PBUFFER_HEIGHT">
      </member>
      <member name="max_pbuffer_pixels"
              value="32792"
              c:identifier="GDK_GL_MAX_PBUFFER_PIXELS"
              glib:nick="max-pbuffer-pixels"
              glib:name="GDK_GL_MAX_PBUFFER_PIXELS">
      </member>
      <member name="visual_id"
              value="32779"
              c:identifier="GDK_GL_VISUAL_ID"
              glib:nick="visual-id"
              glib:name="GDK_GL_VISUAL_ID">
      </member>
      <member name="screen"
              value="32780"
              c:identifier="GDK_GL_SCREEN"
              glib:nick="screen"
              glib:name="GDK_GL_SCREEN">
      </member>
      <member name="sample_buffers"
              value="100000"
              c:identifier="GDK_GL_SAMPLE_BUFFERS"
              glib:nick="sample-buffers"
              glib:name="GDK_GL_SAMPLE_BUFFERS">
      </member>
      <member name="samples"
              value="100001"
              c:identifier="GDK_GL_SAMPLES"
              glib:nick="samples"
              glib:name="GDK_GL_SAMPLES">
      </member>
    </enumeration>
    <enumeration name="ConfigCaveat"
                 glib:type-name="GdkGLConfigCaveat"
                 glib:get-type="gdk_gl_config_caveat_get_type"
                 c:type="GdkGLConfigCaveat">
      <member name="config_caveat_dont_care"
              value="4294967295"
              c:identifier="GDK_GL_CONFIG_CAVEAT_DONT_CARE"
              glib:nick="config-caveat-dont-care"
              glib:name="GDK_GL_CONFIG_CAVEAT_DONT_CARE">
      </member>
      <member name="config_caveat_none"
              value="32768"
              c:identifier="GDK_GL_CONFIG_CAVEAT_NONE"
              glib:nick="config-caveat-none"
              glib:name="GDK_GL_CONFIG_CAVEAT_NONE">
      </member>
      <member name="slow_config"
              value="32769"
              c:identifier="GDK_GL_SLOW_CONFIG"
              glib:nick="slow-config"
              glib:name="GDK_GL_SLOW_CONFIG">
      </member>
      <member name="non_conformant_config"
              value="32781"
              c:identifier="GDK_GL_NON_CONFORMANT_CONFIG"
              glib:nick="non-conformant-config"
              glib:name="GDK_GL_NON_CONFORMANT_CONFIG">
      </member>
    </enumeration>
    <record name="ConfigClass"
            c:type="GdkGLConfigClass"
            glib:is-gtype-struct-for="Config">
      <source-position filename="gdkglconfig.h" line="79"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <enumeration name="ConfigError"
                 glib:type-name="GdkGLConfigError"
                 glib:get-type="gdk_gl_config_error_get_type"
                 c:type="GdkGLConfigError">
      <member name="bad_screen"
              value="1"
              c:identifier="GDK_GL_BAD_SCREEN"
              glib:nick="bad-screen"
              glib:name="GDK_GL_BAD_SCREEN">
      </member>
      <member name="bad_attribute"
              value="2"
              c:identifier="GDK_GL_BAD_ATTRIBUTE"
              glib:nick="bad-attribute"
              glib:name="GDK_GL_BAD_ATTRIBUTE">
      </member>
      <member name="no_extension"
              value="3"
              c:identifier="GDK_GL_NO_EXTENSION"
              glib:nick="no-extension"
              glib:name="GDK_GL_NO_EXTENSION">
      </member>
      <member name="bad_visual"
              value="4"
              c:identifier="GDK_GL_BAD_VISUAL"
              glib:nick="bad-visual"
              glib:name="GDK_GL_BAD_VISUAL">
      </member>
      <member name="bad_context"
              value="5"
              c:identifier="GDK_GL_BAD_CONTEXT"
              glib:nick="bad-context"
              glib:name="GDK_GL_BAD_CONTEXT">
      </member>
      <member name="bad_value"
              value="6"
              c:identifier="GDK_GL_BAD_VALUE"
              glib:nick="bad-value"
              glib:name="GDK_GL_BAD_VALUE">
      </member>
      <member name="bad_enum"
              value="7"
              c:identifier="GDK_GL_BAD_ENUM"
              glib:nick="bad-enum"
              glib:name="GDK_GL_BAD_ENUM">
      </member>
    </enumeration>
    <bitfield name="ConfigMode"
              glib:type-name="GdkGLConfigMode"
              glib:get-type="gdk_gl_config_mode_get_type"
              c:type="GdkGLConfigMode">
      <member name="rgb"
              value="0"
              c:identifier="GDK_GL_MODE_RGB"
              glib:nick="rgb"
              glib:name="GDK_GL_MODE_RGB">
      </member>
      <member name="rgba"
              value="0"
              c:identifier="GDK_GL_MODE_RGBA"
              glib:nick="rgba"
              glib:name="GDK_GL_MODE_RGBA">
      </member>
      <member name="index"
              value="1"
              c:identifier="GDK_GL_MODE_INDEX"
              glib:nick="index"
              glib:name="GDK_GL_MODE_INDEX">
      </member>
      <member name="single"
              value="0"
              c:identifier="GDK_GL_MODE_SINGLE"
              glib:nick="single"
              glib:name="GDK_GL_MODE_SINGLE">
      </member>
      <member name="double"
              value="2"
              c:identifier="GDK_GL_MODE_DOUBLE"
              glib:nick="double"
              glib:name="GDK_GL_MODE_DOUBLE">
      </member>
      <member name="stereo"
              value="4"
              c:identifier="GDK_GL_MODE_STEREO"
              glib:nick="stereo"
              glib:name="GDK_GL_MODE_STEREO">
      </member>
      <member name="alpha"
              value="8"
              c:identifier="GDK_GL_MODE_ALPHA"
              glib:nick="alpha"
              glib:name="GDK_GL_MODE_ALPHA">
      </member>
      <member name="depth"
              value="16"
              c:identifier="GDK_GL_MODE_DEPTH"
              glib:nick="depth"
              glib:name="GDK_GL_MODE_DEPTH">
      </member>
      <member name="stencil"
              value="32"
              c:identifier="GDK_GL_MODE_STENCIL"
              glib:nick="stencil"
              glib:name="GDK_GL_MODE_STENCIL">
      </member>
      <member name="accum"
              value="64"
              c:identifier="GDK_GL_MODE_ACCUM"
              glib:nick="accum"
              glib:name="GDK_GL_MODE_ACCUM">
      </member>
      <member name="multisample"
              value="128"
              c:identifier="GDK_GL_MODE_MULTISAMPLE"
              glib:nick="multisample"
              glib:name="GDK_GL_MODE_MULTISAMPLE">
      </member>
    </bitfield>
    <class name="Context"
           c:symbol-prefix="context"
           c:type="GdkGLContext"
           parent="GObject.Object"
           glib:type-name="GdkGLContext"
           glib:get-type="gdk_gl_context_get_type"
           glib:type-struct="ContextClass">
      <source-position filename="gdkglcontext.h" line="44"/>
      <constructor name="new" c:identifier="gdk_gl_context_new">
        <doc xml:space="preserve"
             filename="gdkglcontext.c"
             line="47">Creates a new OpenGL rendering context.</doc>
        <source-position filename="gdkglcontext.h" line="48"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gdkglcontext.c"
               line="59">the new #GdkGLContext.</doc>
          <type name="Context" c:type="GdkGLContext*"/>
        </return-value>
        <parameters>
          <parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglcontext.c"
                 line="49">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </parameter>
          <parameter name="share_list"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="gdkglcontext.c"
                 line="50">the #GdkGLContext with which to share display lists and texture
             objects. NULL indicates that no sharing is to take place.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </parameter>
          <parameter name="direct" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglcontext.c"
                 line="52">whether rendering is to be done with a direct connection to
         the graphics system.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="render_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglcontext.c"
                 line="54">GDK_GL_RGBA_TYPE or GDK_GL_COLOR_INDEX_TYPE (currently not
              used).</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="get_current" c:identifier="gdk_gl_context_get_current">
        <doc xml:space="preserve"
             filename="x11/gdkglcontext-x11.c"
             line="463">Returns the current #GdkGLContext.</doc>
        <source-position filename="gdkglcontext.h" line="67"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglcontext-x11.c"
               line="468">the current #GdkGLContext or NULL if there is no current
              context.</doc>
          <type name="Context" c:type="GdkGLContext*"/>
        </return-value>
      </function>
      <method name="copy" c:identifier="gdk_gl_context_copy">
        <doc xml:space="preserve"
             filename="x11/gdkglcontext-x11.c"
             line="279">Copy state from @src rendering context to @glcontext.

@mask contains the bitwise-OR of the same symbolic names that are passed to
the glPushAttrib() function. You can use GL_ALL_ATTRIB_BITS to copy all the
rendering state information.</doc>
        <source-position filename="gdkglcontext.h" line="53"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglcontext-x11.c"
               line="291">FALSE if it fails, TRUE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glcontext" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglcontext-x11.c"
                 line="281">a #GdkGLContext.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </instance-parameter>
          <parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglcontext-x11.c"
                 line="282">the source context.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </parameter>
          <parameter name="mask" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglcontext-x11.c"
                 line="283">which portions of @src state are to be copied to @glcontext.</doc>
            <type name="gulong" c:type="unsigned long"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_gl_config" c:identifier="gdk_gl_context_get_gl_config">
        <doc xml:space="preserve"
             filename="x11/gdkglcontext-x11.c"
             line="398">Gets #GdkGLConfig with which the @glcontext is configured.</doc>
        <source-position filename="gdkglcontext.h" line="59"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglcontext-x11.c"
               line="404">the #GdkGLConfig.</doc>
          <type name="Config" c:type="GdkGLConfig*"/>
        </return-value>
        <parameters>
          <instance-parameter name="glcontext" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglcontext-x11.c"
                 line="400">a #GdkGLContext.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_gl_drawable"
              c:identifier="gdk_gl_context_get_gl_drawable">
        <doc xml:space="preserve"
             filename="x11/gdkglcontext-x11.c"
             line="382">Gets #GdkGLDrawable to which the @glcontext is bound.</doc>
        <source-position filename="gdkglcontext.h" line="57"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglcontext-x11.c"
               line="388">the #GdkGLDrawable or NULL if no #GdkGLDrawable is bound.</doc>
          <type name="Drawable" c:type="GdkGLDrawable*"/>
        </return-value>
        <parameters>
          <instance-parameter name="glcontext" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglcontext-x11.c"
                 line="384">a #GdkGLContext.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_render_type"
              c:identifier="gdk_gl_context_get_render_type">
        <doc xml:space="preserve"
             filename="x11/gdkglcontext-x11.c"
             line="447">Gets render_type of the @glcontext.</doc>
        <source-position filename="gdkglcontext.h" line="65"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglcontext-x11.c"
               line="453">GDK_GL_RGBA_TYPE or GDK_GL_COLOR_INDEX_TYPE.</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="glcontext" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglcontext-x11.c"
                 line="449">a #GdkGLContext.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_share_list"
              c:identifier="gdk_gl_context_get_share_list">
        <doc xml:space="preserve"
             filename="x11/gdkglcontext-x11.c"
             line="414">Gets #GdkGLContext with which the @glcontext shares the display lists and
texture objects.</doc>
        <source-position filename="gdkglcontext.h" line="61"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglcontext-x11.c"
               line="421">the #GdkGLContext.</doc>
          <type name="Context" c:type="GdkGLContext*"/>
        </return-value>
        <parameters>
          <instance-parameter name="glcontext" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglcontext-x11.c"
                 line="416">a #GdkGLContext.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_direct" c:identifier="gdk_gl_context_is_direct">
        <doc xml:space="preserve"
             filename="x11/gdkglcontext-x11.c"
             line="431">Returns whether the @glcontext is a direct rendering context.</doc>
        <source-position filename="gdkglcontext.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglcontext-x11.c"
               line="437">TRUE if the @glcontext is a direct rendering contest.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="glcontext" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglcontext-x11.c"
                 line="433">a #GdkGLContext.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="ContextClass"
            c:type="GdkGLContextClass"
            glib:is-gtype-struct-for="Context">
      <source-position filename="gdkglcontext.h" line="44"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <constant name="DONT_CARE" value="4294967295" c:type="GDK_GL_DONT_CARE">
      <source-position filename="gdkgltokens.h" line="132"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <function-macro name="DRAWABLE"
                    c:identifier="GDK_GL_DRAWABLE"
                    introspectable="0">
      <source-position filename="gdkgldrawable.h" line="30"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DRAWABLE_CLASS"
                    c:identifier="GDK_GL_DRAWABLE_CLASS"
                    introspectable="0">
      <source-position filename="gdkgldrawable.h" line="31"/>
      <parameters>
        <parameter name="vtable">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DRAWABLE_GET_CLASS"
                    c:identifier="GDK_GL_DRAWABLE_GET_CLASS"
                    introspectable="0">
      <source-position filename="gdkgldrawable.h" line="34"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <interface name="Drawable"
               c:symbol-prefix="drawable"
               c:type="GdkGLDrawable"
               glib:type-name="GdkGLDrawable"
               glib:get-type="gdk_gl_drawable_get_type">
      <function name="get_current" c:identifier="gdk_gl_drawable_get_current">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="203">Returns the current #GdkGLDrawable.</doc>
        <source-position filename="gdkgldrawable.h" line="89"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkgldrawable.c"
               line="208">the current #GdkGLDrawable or NULL if there is no current drawable.</doc>
          <type name="Drawable" c:type="GdkGLDrawable*"/>
        </return-value>
      </function>
      <method name="get_gl_config"
              c:identifier="gdk_gl_drawable_get_gl_config">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="167">Gets #GdkGLConfig with which the @gldrawable is configured.</doc>
        <source-position filename="gdkgldrawable.h" line="83"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkgldrawable.c"
               line="173">the #GdkGLConfig.</doc>
          <type name="Config" c:type="GdkGLConfig*"/>
        </return-value>
        <parameters>
          <instance-parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="169">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_size" c:identifier="gdk_gl_drawable_get_size">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="183">Fills *width and *height with the size of GL drawable.
width or height can be NULL if you only want the other one.</doc>
        <source-position filename="gdkgldrawable.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="185">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </instance-parameter>
          <parameter name="width"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="186">location to store drawable's width, or NULL.</doc>
            <type name="gint" c:type="gint*"/>
          </parameter>
          <parameter name="height"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="187">location to store drawable's height, or NULL.</doc>
            <type name="gint" c:type="gint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="gl_begin" c:identifier="gdk_gl_drawable_gl_begin">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="132">Delimits the begining of the OpenGL execution.</doc>
        <source-position filename="gdkgldrawable.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkgldrawable.c"
               line="139">TRUE if it is successful, FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="134">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </instance-parameter>
          <parameter name="glcontext" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="135">a #GdkGLContext.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </parameter>
        </parameters>
      </method>
      <method name="gl_end" c:identifier="gdk_gl_drawable_gl_end">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="152">Delimits the end of the OpenGL execution.</doc>
        <source-position filename="gdkgldrawable.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="154">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_double_buffered"
              c:identifier="gdk_gl_drawable_is_double_buffered">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="70">Returns whether the @gldrawable supports the double-buffered visual.</doc>
        <source-position filename="gdkgldrawable.h" line="70"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkgldrawable.c"
               line="76">TRUE if the double-buffered visual is supported,
              FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="72">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="make_current" c:identifier="gdk_gl_drawable_make_current">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="50">Attach an OpenGL rendering context to a @gldrawable.</doc>
        <source-position filename="gdkgldrawable.h" line="67"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkgldrawable.c"
               line="57">TRUE if it is successful, FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="52">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </instance-parameter>
          <parameter name="glcontext" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="53">a #GdkGLContext.</doc>
            <type name="Context" c:type="GdkGLContext*"/>
          </parameter>
        </parameters>
      </method>
      <method name="swap_buffers" c:identifier="gdk_gl_drawable_swap_buffers">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="87">Exchange front and back buffers.</doc>
        <source-position filename="gdkgldrawable.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="89">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="wait_gdk" c:identifier="gdk_gl_drawable_wait_gdk">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="117">Complete GDK drawing execution prior to subsequent OpenGL calls.</doc>
        <source-position filename="gdkgldrawable.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="119">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="wait_gl" c:identifier="gdk_gl_drawable_wait_gl">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="102">Complete OpenGL execution prior to subsequent GDK drawing calls.</doc>
        <source-position filename="gdkgldrawable.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="gldrawable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkgldrawable.c"
                 line="104">a #GdkGLDrawable.</doc>
            <type name="Drawable" c:type="GdkGLDrawable*"/>
          </instance-parameter>
        </parameters>
      </method>
    </interface>
    <enumeration name="DrawableAttrib"
                 glib:type-name="GdkGLDrawableAttrib"
                 glib:get-type="gdk_gl_drawable_attrib_get_type"
                 c:type="GdkGLDrawableAttrib">
      <member name="preserved_contents"
              value="32795"
              c:identifier="GDK_GL_PRESERVED_CONTENTS"
              glib:nick="preserved-contents"
              glib:name="GDK_GL_PRESERVED_CONTENTS">
      </member>
      <member name="largest_pbuffer"
              value="32796"
              c:identifier="GDK_GL_LARGEST_PBUFFER"
              glib:nick="largest-pbuffer"
              glib:name="GDK_GL_LARGEST_PBUFFER">
      </member>
      <member name="width"
              value="32797"
              c:identifier="GDK_GL_WIDTH"
              glib:nick="width"
              glib:name="GDK_GL_WIDTH">
      </member>
      <member name="height"
              value="32798"
              c:identifier="GDK_GL_HEIGHT"
              glib:nick="height"
              glib:name="GDK_GL_HEIGHT">
      </member>
      <member name="event_mask"
              value="32799"
              c:identifier="GDK_GL_EVENT_MASK"
              glib:nick="event-mask"
              glib:name="GDK_GL_EVENT_MASK">
      </member>
    </enumeration>
    <record name="DrawableClass" c:type="GdkGLDrawableClass">
      <source-position filename="gdkgldrawable.h" line="63"/>
      <field name="base_iface" writable="1">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="create_new_context" introspectable="0">
        <callback name="create_new_context" introspectable="0">
          <source-position filename="gdkgldrawable.h" line="40"/>
          <return-value>
            <type name="Context" c:type="GdkGLContext*"/>
          </return-value>
          <parameters>
            <parameter name="gldrawable" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
            <parameter name="share_list" transfer-ownership="none">
              <type name="Context" c:type="GdkGLContext*"/>
            </parameter>
            <parameter name="direct" transfer-ownership="none">
              <type name="gboolean" c:type="gboolean"/>
            </parameter>
            <parameter name="render_type" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="make_context_current">
        <callback name="make_context_current">
          <source-position filename="gdkgldrawable.h" line="45"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="draw" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
            <parameter name="read" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
            <parameter name="glcontext" transfer-ownership="none">
              <type name="Context" c:type="GdkGLContext*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="is_double_buffered">
        <callback name="is_double_buffered">
          <source-position filename="gdkgldrawable.h" line="48"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="gldrawable" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="swap_buffers">
        <callback name="swap_buffers">
          <source-position filename="gdkgldrawable.h" line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="gldrawable" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="wait_gl">
        <callback name="wait_gl">
          <source-position filename="gdkgldrawable.h" line="50"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="gldrawable" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="wait_gdk">
        <callback name="wait_gdk">
          <source-position filename="gdkgldrawable.h" line="51"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="gldrawable" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="gl_begin">
        <callback name="gl_begin">
          <source-position filename="gdkgldrawable.h" line="53"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="draw" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
            <parameter name="read" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
            <parameter name="glcontext" transfer-ownership="none">
              <type name="Context" c:type="GdkGLContext*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="gl_end">
        <callback name="gl_end">
          <source-position filename="gdkgldrawable.h" line="56"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="gldrawable" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_gl_config" introspectable="0">
        <callback name="get_gl_config" introspectable="0">
          <source-position filename="gdkgldrawable.h" line="58"/>
          <return-value>
            <type name="Config" c:type="GdkGLConfig*"/>
          </return-value>
          <parameters>
            <parameter name="gldrawable" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_size">
        <callback name="get_size">
          <source-position filename="gdkgldrawable.h" line="60"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="gldrawable" transfer-ownership="none">
              <type name="Drawable" c:type="GdkGLDrawable*"/>
            </parameter>
            <parameter name="width" transfer-ownership="none">
              <type name="gint" c:type="gint*"/>
            </parameter>
            <parameter name="height" transfer-ownership="none">
              <type name="gint" c:type="gint*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <enumeration name="DrawableType"
                 glib:type-name="GdkGLDrawableType"
                 glib:get-type="gdk_gl_drawable_type_get_type"
                 c:type="GdkGLDrawableType">
      <member name="window"
              value="32802"
              c:identifier="GDK_GL_WINDOW"
              glib:nick="window"
              glib:name="GDK_GL_WINDOW">
      </member>
      <member name="pbuffer"
              value="32803"
              c:identifier="GDK_GL_PBUFFER"
              glib:nick="pbuffer"
              glib:name="GDK_GL_PBUFFER">
      </member>
    </enumeration>
    <bitfield name="DrawableTypeMask"
              glib:type-name="GdkGLDrawableTypeMask"
              glib:get-type="gdk_gl_drawable_type_mask_get_type"
              c:type="GdkGLDrawableTypeMask">
      <member name="window_bit"
              value="1"
              c:identifier="GDK_GL_WINDOW_BIT"
              glib:nick="window-bit"
              glib:name="GDK_GL_WINDOW_BIT">
      </member>
      <member name="pixmap_bit"
              value="2"
              c:identifier="GDK_GL_PIXMAP_BIT"
              glib:nick="pixmap-bit"
              glib:name="GDK_GL_PIXMAP_BIT">
      </member>
      <member name="pbuffer_bit"
              value="4"
              c:identifier="GDK_GL_PBUFFER_BIT"
              glib:nick="pbuffer-bit"
              glib:name="GDK_GL_PBUFFER_BIT">
      </member>
    </bitfield>
    <bitfield name="EventMask"
              glib:type-name="GdkGLEventMask"
              glib:get-type="gdk_gl_event_mask_get_type"
              c:type="GdkGLEventMask">
      <member name="mask"
              value="134217728"
              c:identifier="GDK_GL_PBUFFER_CLOBBER_MASK"
              glib:nick="mask"
              glib:name="GDK_GL_PBUFFER_CLOBBER_MASK">
      </member>
    </bitfield>
    <enumeration name="EventType"
                 glib:type-name="GdkGLEventType"
                 glib:get-type="gdk_gl_event_type_get_type"
                 c:type="GdkGLEventType">
      <member name="damaged"
              value="32800"
              c:identifier="GDK_GL_DAMAGED"
              glib:nick="damaged"
              glib:name="GDK_GL_DAMAGED">
      </member>
      <member name="saved"
              value="32801"
              c:identifier="GDK_GL_SAVED"
              glib:nick="saved"
              glib:name="GDK_GL_SAVED">
      </member>
    </enumeration>
    <function-macro name="IS_GL_CONFIG"
                    c:identifier="GDK_IS_GL_CONFIG"
                    introspectable="0">
      <source-position filename="gdkglconfig.h" line="52"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GL_CONFIG_CLASS"
                    c:identifier="GDK_IS_GL_CONFIG_CLASS"
                    introspectable="0">
      <source-position filename="gdkglconfig.h" line="53"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GL_CONTEXT"
                    c:identifier="GDK_IS_GL_CONTEXT"
                    introspectable="0">
      <source-position filename="gdkglcontext.h" line="32"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GL_CONTEXT_CLASS"
                    c:identifier="GDK_IS_GL_CONTEXT_CLASS"
                    introspectable="0">
      <source-position filename="gdkglcontext.h" line="33"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GL_DRAWABLE"
                    c:identifier="GDK_IS_GL_DRAWABLE"
                    introspectable="0">
      <source-position filename="gdkgldrawable.h" line="32"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GL_DRAWABLE_CLASS"
                    c:identifier="GDK_IS_GL_DRAWABLE_CLASS"
                    introspectable="0">
      <source-position filename="gdkgldrawable.h" line="33"/>
      <parameters>
        <parameter name="vtable">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GL_PIXMAP"
                    c:identifier="GDK_IS_GL_PIXMAP"
                    introspectable="0">
      <source-position filename="gdkglpixmap.h" line="34"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GL_PIXMAP_CLASS"
                    c:identifier="GDK_IS_GL_PIXMAP_CLASS"
                    introspectable="0">
      <source-position filename="gdkglpixmap.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GL_WINDOW"
                    c:identifier="GDK_IS_GL_WINDOW"
                    introspectable="0">
      <source-position filename="gdkglwindow.h" line="34"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GL_WINDOW_CLASS"
                    c:identifier="GDK_IS_GL_WINDOW_CLASS"
                    introspectable="0">
      <source-position filename="gdkglwindow.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="NONE" value="32768" c:type="GDK_GL_NONE">
      <source-position filename="gdkgltokens.h" line="138"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <function-macro name="PIXMAP"
                    c:identifier="GDK_GL_PIXMAP"
                    introspectable="0">
      <source-position filename="gdkglpixmap.h" line="32"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="PIXMAP_CLASS"
                    c:identifier="GDK_GL_PIXMAP_CLASS"
                    introspectable="0">
      <source-position filename="gdkglpixmap.h" line="33"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="PIXMAP_GET_CLASS"
                    c:identifier="GDK_GL_PIXMAP_GET_CLASS"
                    introspectable="0">
      <source-position filename="gdkglpixmap.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <enumeration name="PbufferAttrib"
                 glib:type-name="GdkGLPbufferAttrib"
                 glib:get-type="gdk_gl_pbuffer_attrib_get_type"
                 c:type="GdkGLPbufferAttrib">
      <member name="preserved_contents"
              value="32795"
              c:identifier="GDK_GL_PBUFFER_PRESERVED_CONTENTS"
              glib:nick="preserved-contents"
              glib:name="GDK_GL_PBUFFER_PRESERVED_CONTENTS">
      </member>
      <member name="largest_pbuffer"
              value="32796"
              c:identifier="GDK_GL_PBUFFER_LARGEST_PBUFFER"
              glib:nick="largest-pbuffer"
              glib:name="GDK_GL_PBUFFER_LARGEST_PBUFFER">
      </member>
      <member name="height"
              value="32832"
              c:identifier="GDK_GL_PBUFFER_HEIGHT"
              glib:nick="height"
              glib:name="GDK_GL_PBUFFER_HEIGHT">
      </member>
      <member name="width"
              value="32833"
              c:identifier="GDK_GL_PBUFFER_WIDTH"
              glib:nick="width"
              glib:name="GDK_GL_PBUFFER_WIDTH">
      </member>
    </enumeration>
    <class name="Pixmap"
           c:symbol-prefix="pixmap"
           c:type="GdkGLPixmap"
           parent="Gdk.Drawable"
           glib:type-name="GdkGLPixmap"
           glib:get-type="gdk_gl_pixmap_get_type"
           glib:type-struct="PixmapClass">
      <source-position filename="gdkglpixmap.h" line="48"/>
      <constructor name="new" c:identifier="gdk_gl_pixmap_new">
        <doc xml:space="preserve"
             filename="x11/gdkglpixmap-x11.c"
             line="129">Creates an off-screen rendering area.
attrib_list is currently unused. This must be set to NULL or empty
(first attribute of None). See GLX 1.3 spec.</doc>
        <source-position filename="gdkglpixmap.h" line="56"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="x11/gdkglpixmap-x11.c"
               line="139">the new #GdkGLPixmap.</doc>
          <type name="Pixmap" c:type="GdkGLPixmap*"/>
        </return-value>
        <parameters>
          <parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglpixmap-x11.c"
                 line="131">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </parameter>
          <parameter name="pixmap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglpixmap-x11.c"
                 line="132">the #GdkPixmap to be used as the rendering area.</doc>
            <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
          </parameter>
          <parameter name="attrib_list"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="x11/gdkglpixmap-x11.c"
                 line="133">this must be set to NULL or empty (first attribute of None).</doc>
            <array zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
        </parameters>
      </constructor>
      <function name="get_gl_pixmap" c:identifier="gdk_pixmap_get_gl_pixmap">
        <doc xml:space="preserve"
             filename="gdkglpixmap.c"
             line="858">Returns the #GdkGLPixmap held by the @pixmap.</doc>
        <source-position filename="gdkglpixmap.h" line="74"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglpixmap.c"
               line="864">the #GdkGLPixmap.</doc>
          <type name="Pixmap" c:type="GdkGLPixmap*"/>
        </return-value>
        <parameters>
          <parameter name="pixmap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglpixmap.c"
                 line="860">a #GdkPixmap.</doc>
            <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
          </parameter>
        </parameters>
      </function>
      <function name="is_gl_capable" c:identifier="gdk_pixmap_is_gl_capable">
        <doc xml:space="preserve"
             filename="gdkglpixmap.c"
             line="842">Returns whether the @pixmap is OpenGL-capable.</doc>
        <source-position filename="gdkglpixmap.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglpixmap.c"
               line="848">TRUE if the @pixmap is OpenGL-capable, FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="pixmap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglpixmap.c"
                 line="844">a #GdkPixmap.</doc>
            <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_gl_capability"
                c:identifier="gdk_pixmap_set_gl_capability">
        <doc xml:space="preserve"
             filename="gdkglpixmap.c"
             line="760">Set the OpenGL-capability to the @pixmap.
This function creates a new #GdkGLPixmap held by the @pixmap.
attrib_list is currently unused. This must be set to NULL or empty
(first attribute of None).</doc>
        <source-position filename="gdkglpixmap.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglpixmap.c"
               line="771">the #GdkGLPixmap used by the @pixmap if it is successful,
              NULL otherwise.</doc>
          <type name="Pixmap" c:type="GdkGLPixmap*"/>
        </return-value>
        <parameters>
          <parameter name="pixmap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglpixmap.c"
                 line="762">the #GdkPixmap to be used as the rendering area.</doc>
            <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
          </parameter>
          <parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglpixmap.c"
                 line="763">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </parameter>
          <parameter name="attrib_list"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="gdkglpixmap.c"
                 line="764">this must be set to NULL or empty (first attribute of None).</doc>
            <array zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
        </parameters>
      </function>
      <function name="unset_gl_capability"
                c:identifier="gdk_pixmap_unset_gl_capability">
        <doc xml:space="preserve"
             filename="gdkglpixmap.c"
             line="811">Unset the OpenGL-capability of the @pixmap.
This function destroys the #GdkGLPixmap held by the @pixmap.</doc>
        <source-position filename="gdkglpixmap.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="pixmap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglpixmap.c"
                 line="813">a #GdkPixmap.</doc>
            <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_pixmap" c:identifier="gdk_gl_pixmap_get_pixmap">
        <doc xml:space="preserve"
             filename="gdkglpixmap.c"
             line="734">Returns the #GdkPixmap associated with @glpixmap.

Notice that #GdkGLPixmap is not #GdkPixmap, but another
#GdkDrawable which have an associated #GdkPixmap.</doc>
        <source-position filename="gdkglpixmap.h" line="60"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglpixmap.c"
               line="743">the #GdkPixmap associated with @glpixmap.</doc>
          <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
        </return-value>
        <parameters>
          <instance-parameter name="glpixmap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglpixmap.c"
                 line="736">a #GdkGLPixmap.</doc>
            <type name="Pixmap" c:type="GdkGLPixmap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="Gdk.Drawable" c:type="GdkDrawable"/>
      </field>
      <field name="drawable">
        <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
      </field>
    </class>
    <record name="PixmapClass"
            c:type="GdkGLPixmapClass"
            glib:is-gtype-struct-for="Pixmap">
      <source-position filename="gdkglpixmap.h" line="48"/>
      <field name="parent_class">
        <type name="Gdk.DrawableClass" c:type="GdkDrawableClass"/>
      </field>
    </record>
    <callback name="Proc" c:type="GdkGLProc">
      <source-position filename="gdkgltypes.h" line="30"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </callback>
    <enumeration name="RenderType"
                 glib:type-name="GdkGLRenderType"
                 glib:get-type="gdk_gl_render_type_get_type"
                 c:type="GdkGLRenderType">
      <member name="rgba_type"
              value="32788"
              c:identifier="GDK_GL_RGBA_TYPE"
              glib:nick="rgba-type"
              glib:name="GDK_GL_RGBA_TYPE">
      </member>
      <member name="color_index_type"
              value="32789"
              c:identifier="GDK_GL_COLOR_INDEX_TYPE"
              glib:nick="color-index-type"
              glib:name="GDK_GL_COLOR_INDEX_TYPE">
      </member>
    </enumeration>
    <bitfield name="RenderTypeMask"
              glib:type-name="GdkGLRenderTypeMask"
              glib:get-type="gdk_gl_render_type_mask_get_type"
              c:type="GdkGLRenderTypeMask">
      <member name="rgba_bit"
              value="1"
              c:identifier="GDK_GL_RGBA_BIT"
              glib:nick="rgba-bit"
              glib:name="GDK_GL_RGBA_BIT">
      </member>
      <member name="color_index_bit"
              value="2"
              c:identifier="GDK_GL_COLOR_INDEX_BIT"
              glib:nick="color-index-bit"
              glib:name="GDK_GL_COLOR_INDEX_BIT">
      </member>
    </bitfield>
    <constant name="SUCCESS" value="0" c:type="GDK_GL_SUCCESS">
      <source-position filename="gdkgltokens.h" line="29"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <enumeration name="TransparentType"
                 glib:type-name="GdkGLTransparentType"
                 glib:get-type="gdk_gl_transparent_type_get_type"
                 c:type="GdkGLTransparentType">
      <member name="none"
              value="32768"
              c:identifier="GDK_GL_TRANSPARENT_NONE"
              glib:nick="none"
              glib:name="GDK_GL_TRANSPARENT_NONE">
      </member>
      <member name="rgb"
              value="32776"
              c:identifier="GDK_GL_TRANSPARENT_RGB"
              glib:nick="rgb"
              glib:name="GDK_GL_TRANSPARENT_RGB">
      </member>
      <member name="index"
              value="32777"
              c:identifier="GDK_GL_TRANSPARENT_INDEX"
              glib:nick="index"
              glib:name="GDK_GL_TRANSPARENT_INDEX">
      </member>
    </enumeration>
    <enumeration name="VisualType"
                 glib:type-name="GdkGLVisualType"
                 glib:get-type="gdk_gl_visual_type_get_type"
                 c:type="GdkGLVisualType">
      <member name="visual_type_dont_care"
              value="4294967295"
              c:identifier="GDK_GL_VISUAL_TYPE_DONT_CARE"
              glib:nick="visual-type-dont-care"
              glib:name="GDK_GL_VISUAL_TYPE_DONT_CARE">
      </member>
      <member name="true_color"
              value="32770"
              c:identifier="GDK_GL_TRUE_COLOR"
              glib:nick="true-color"
              glib:name="GDK_GL_TRUE_COLOR">
      </member>
      <member name="direct_color"
              value="32771"
              c:identifier="GDK_GL_DIRECT_COLOR"
              glib:nick="direct-color"
              glib:name="GDK_GL_DIRECT_COLOR">
      </member>
      <member name="pseudo_color"
              value="32772"
              c:identifier="GDK_GL_PSEUDO_COLOR"
              glib:nick="pseudo-color"
              glib:name="GDK_GL_PSEUDO_COLOR">
      </member>
      <member name="static_color"
              value="32773"
              c:identifier="GDK_GL_STATIC_COLOR"
              glib:nick="static-color"
              glib:name="GDK_GL_STATIC_COLOR">
      </member>
      <member name="gray_scale"
              value="32774"
              c:identifier="GDK_GL_GRAY_SCALE"
              glib:nick="gray-scale"
              glib:name="GDK_GL_GRAY_SCALE">
      </member>
      <member name="static_gray"
              value="32775"
              c:identifier="GDK_GL_STATIC_GRAY"
              glib:nick="static-gray"
              glib:name="GDK_GL_STATIC_GRAY">
      </member>
    </enumeration>
    <function-macro name="WINDOW"
                    c:identifier="GDK_GL_WINDOW"
                    introspectable="0">
      <source-position filename="gdkglwindow.h" line="32"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WINDOW_CLASS"
                    c:identifier="GDK_GL_WINDOW_CLASS"
                    introspectable="0">
      <source-position filename="gdkglwindow.h" line="33"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WINDOW_GET_CLASS"
                    c:identifier="GDK_GL_WINDOW_GET_CLASS"
                    introspectable="0">
      <source-position filename="gdkglwindow.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Window"
           c:symbol-prefix="window"
           c:type="GdkGLWindow"
           parent="Gdk.Drawable"
           glib:type-name="GdkGLWindow"
           glib:get-type="gdk_gl_window_get_type"
           glib:type-struct="WindowClass">
      <source-position filename="gdkglwindow.h" line="48"/>
      <constructor name="new" c:identifier="gdk_gl_window_new">
        <doc xml:space="preserve"
             filename="x11/gdkglwindow-x11.c"
             line="141">Creates an on-screen rendering area.
attrib_list is currently unused. This must be set to NULL or empty
(first attribute of None). See GLX 1.3 spec.</doc>
        <source-position filename="gdkglwindow.h" line="56"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="x11/gdkglwindow-x11.c"
               line="151">the new #GdkGLWindow.</doc>
          <type name="Window" c:type="GdkGLWindow*"/>
        </return-value>
        <parameters>
          <parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglwindow-x11.c"
                 line="143">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </parameter>
          <parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="x11/gdkglwindow-x11.c"
                 line="144">the #GdkWindow to be used as the rendering area.</doc>
            <type name="Gdk.Window" c:type="GdkWindow*"/>
          </parameter>
          <parameter name="attrib_list"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="x11/gdkglwindow-x11.c"
                 line="145">this must be set to NULL or empty (first attribute of None).</doc>
            <array zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
        </parameters>
      </constructor>
      <function name="get_gl_window" c:identifier="gdk_window_get_gl_window">
        <doc xml:space="preserve"
             filename="gdkglwindow.c"
             line="873">Returns the #GdkGLWindow held by the @window.</doc>
        <source-position filename="gdkglwindow.h" line="74"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglwindow.c"
               line="879">the #GdkGLWindow.</doc>
          <type name="Window" c:type="GdkGLWindow*"/>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglwindow.c"
                 line="875">a #GdkWindow.</doc>
            <type name="Gdk.Window" c:type="GdkWindow*"/>
          </parameter>
        </parameters>
      </function>
      <function name="is_gl_capable" c:identifier="gdk_window_is_gl_capable">
        <doc xml:space="preserve"
             filename="gdkglwindow.c"
             line="857">Returns whether the @window is OpenGL-capable.</doc>
        <source-position filename="gdkglwindow.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglwindow.c"
               line="863">TRUE if the @window is OpenGL-capable, FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglwindow.c"
                 line="859">a #GdkWindow.</doc>
            <type name="Gdk.Window" c:type="GdkWindow*"/>
          </parameter>
        </parameters>
      </function>
      <function name="set_gl_capability"
                c:identifier="gdk_window_set_gl_capability">
        <doc xml:space="preserve"
             filename="gdkglwindow.c"
             line="761">Set the OpenGL-capability to the @window.
This function creates a new #GdkGLWindow held by the @window.
attrib_list is currently unused. This must be set to NULL or empty
(first attribute of None).</doc>
        <source-position filename="gdkglwindow.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglwindow.c"
               line="772">the #GdkGLWindow used by the @window if it is successful,
              NULL otherwise.</doc>
          <type name="Window" c:type="GdkGLWindow*"/>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglwindow.c"
                 line="763">the #GdkWindow to be used as the rendering area.</doc>
            <type name="Gdk.Window" c:type="GdkWindow*"/>
          </parameter>
          <parameter name="glconfig" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglwindow.c"
                 line="764">a #GdkGLConfig.</doc>
            <type name="Config" c:type="GdkGLConfig*"/>
          </parameter>
          <parameter name="attrib_list"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="gdkglwindow.c"
                 line="765">this must be set to NULL or empty (first attribute of None).</doc>
            <array zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
        </parameters>
      </function>
      <function name="unset_gl_capability"
                c:identifier="gdk_window_unset_gl_capability">
        <doc xml:space="preserve"
             filename="gdkglwindow.c"
             line="826">Unset the OpenGL-capability of the @window.
This function destroys the #GdkGLWindow held by the @window.</doc>
        <source-position filename="gdkglwindow.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglwindow.c"
                 line="828">a #GdkWindow.</doc>
            <type name="Gdk.Window" c:type="GdkWindow*"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_window" c:identifier="gdk_gl_window_get_window">
        <doc xml:space="preserve"
             filename="gdkglwindow.c"
             line="735">Returns the #GdkWindow associated with @glwindow.

Notice that #GdkGLWindow is not #GdkWindow, but another
#GdkDrawable which have an associated #GdkWindow.</doc>
        <source-position filename="gdkglwindow.h" line="60"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglwindow.c"
               line="744">the #GdkWindow associated with @glwindow.</doc>
          <type name="Gdk.Window" c:type="GdkWindow*"/>
        </return-value>
        <parameters>
          <instance-parameter name="glwindow" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="gdkglwindow.c"
                 line="737">a #GdkGLWindow.</doc>
            <type name="Window" c:type="GdkGLWindow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="Gdk.Drawable" c:type="GdkDrawable"/>
      </field>
      <field name="drawable">
        <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
      </field>
    </class>
    <record name="WindowClass"
            c:type="GdkGLWindowClass"
            glib:is-gtype-struct-for="Window">
      <source-position filename="gdkglwindow.h" line="48"/>
      <field name="parent_class">
        <type name="Gdk.DrawableClass" c:type="GdkDrawableClass"/>
      </field>
    </record>
    <function name="drawable_get_current"
              c:identifier="gdk_gl_drawable_get_current"
              moved-to="Drawable.get_current">
      <doc xml:space="preserve"
           filename="gdkgldrawable.c"
           line="203">Returns the current #GdkGLDrawable.</doc>
      <source-position filename="gdkgldrawable.h" line="89"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gdkgldrawable.c"
             line="208">the current #GdkGLDrawable or NULL if there is no current drawable.</doc>
        <type name="Drawable" c:type="GdkGLDrawable*"/>
      </return-value>
    </function>
    <function name="get_binary_age" c:identifier="gdk_gl_get_binary_age">
      <doc xml:space="preserve"
           filename="gdkglversion.c"
           line="77">Returns the GtkGLExt library binary age.</doc>
      <source-position filename="gdkglversion.h" line="60"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gdkglversion.c"
             line="82">The binary age of the GtkGLExt library.</doc>
        <type name="gint" c:type="int"/>
      </return-value>
    </function>
    <function name="get_interface_age" c:identifier="gdk_gl_get_interface_age">
      <doc xml:space="preserve"
           filename="gdkglversion.c"
           line="64">Returns the GtkGLExt library interface age.</doc>
      <source-position filename="gdkglversion.h" line="57"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gdkglversion.c"
             line="69">The interface age of the GtkGLExt library.</doc>
        <type name="gint" c:type="int"/>
      </return-value>
    </function>
    <function name="get_major_version" c:identifier="gdk_gl_get_major_version">
      <doc xml:space="preserve"
           filename="gdkglversion.c"
           line="25">Returns the GtkGLExt library major version number.</doc>
      <source-position filename="gdkglversion.h" line="48"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gdkglversion.c"
             line="30">The major version number of the GtkGLExt library.</doc>
        <type name="gint" c:type="int"/>
      </return-value>
    </function>
    <function name="get_micro_version" c:identifier="gdk_gl_get_micro_version">
      <doc xml:space="preserve"
           filename="gdkglversion.c"
           line="51">Returns the GtkGLExt library micro version number.</doc>
      <source-position filename="gdkglversion.h" line="54"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gdkglversion.c"
             line="56">The micro version number of the GtkGLExt library.</doc>
        <type name="gint" c:type="int"/>
      </return-value>
    </function>
    <function name="get_minor_version" c:identifier="gdk_gl_get_minor_version">
      <doc xml:space="preserve"
           filename="gdkglversion.c"
           line="38">Returns the GtkGLExt library minor version number.</doc>
      <source-position filename="gdkglversion.h" line="51"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gdkglversion.c"
             line="43">The minor version number of the GtkGLExt library.</doc>
        <type name="gint" c:type="int"/>
      </return-value>
    </function>
    <function name="get_proc_address" c:identifier="gdk_gl_get_proc_address">
      <doc xml:space="preserve"
           filename="x11/gdkglquery-x11.c"
           line="191">Returns the address of the OpenGL, GLU, or GLX function.</doc>
      <source-position filename="gdkglquery.h" line="44"/>
      <return-value transfer-ownership="none" nullable="1">
        <doc xml:space="preserve"
             filename="x11/gdkglquery-x11.c"
             line="197">the address of the function named by @proc_name.</doc>
        <type name="gpointer" c:type="GdkGLProc"/>
      </return-value>
      <parameters>
        <parameter name="proc_name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglquery-x11.c"
               line="193">function name.</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="init" c:identifier="gdk_gl_init">
      <doc xml:space="preserve"
           filename="gdkglinit.c"
           line="213">Call this function before using any other GdkGLExt functions in your
applications.  It will initialize everything needed to operate the
library and parses some standard command line options. @argc and
@argv are adjusted accordingly so your own code will never see those
standard arguments.

&lt;note&gt;&lt;para&gt;This function will terminate your program if it was
unable to initialize the library for some reason. If you want your
program to fall back to a textual interface you want to call
gdk_gl_init_check() instead.&lt;/para&gt;&lt;/note&gt;</doc>
      <source-position filename="gdkglinit.h" line="34"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="argc"
                   direction="inout"
                   caller-allocates="0"
                   transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gdkglinit.c"
               line="215">Address of the &lt;parameter&gt;argc&lt;/parameter&gt; parameter of your
main() function. Changed if any arguments were handled.</doc>
          <type name="gint" c:type="int*"/>
        </parameter>
        <parameter name="argv"
                   direction="inout"
                   caller-allocates="0"
                   transfer-ownership="full"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="gdkglinit.c"
               line="217">Address of the &lt;parameter&gt;argv&lt;/parameter&gt; parameter of
main(). Any parameters understood by gdk_gl_init() are stripped
before return.</doc>
          <array length="0" zero-terminated="0" c:type="char***">
            <type name="utf8" c:type="char**"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="init_check" c:identifier="gdk_gl_init_check">
      <doc xml:space="preserve"
           filename="gdkglinit.c"
           line="177">This function does the same work as gdk_gl_init() with only
a single change: It does not terminate the program if the library can't be
initialized. Instead it returns %FALSE on failure.

This way the application can fall back to some other means of communication
with the user - for example a curses or command line interface.</doc>
      <source-position filename="gdkglinit.h" line="31"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gdkglinit.c"
             line="193">%TRUE if the GUI has been successfully initialized,
              %FALSE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="argc"
                   direction="inout"
                   caller-allocates="0"
                   transfer-ownership="full">
          <doc xml:space="preserve"
               filename="gdkglinit.c"
               line="179">Address of the &lt;parameter&gt;argc&lt;/parameter&gt; parameter of your
       &lt;function&gt;main()&lt;/function&gt; function. Changed if any arguments
       were handled.</doc>
          <type name="gint" c:type="int*"/>
        </parameter>
        <parameter name="argv"
                   direction="inout"
                   caller-allocates="0"
                   transfer-ownership="full"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="gdkglinit.c"
               line="182">Address of the &lt;parameter&gt;argv&lt;/parameter&gt; parameter of
       &lt;function&gt;main()&lt;/function&gt;. Any parameters understood by
       gdk_gl_init() are stripped before return.</doc>
          <array length="0" zero-terminated="0" c:type="char***">
            <type name="utf8" c:type="char**"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function-macro name="pixmap_get_gl_drawable"
                    c:identifier="gdk_pixmap_get_gl_drawable"
                    introspectable="0">
      <source-position filename="gdkglpixmap.h" line="76"/>
      <parameters>
        <parameter name="pixmap">
        </parameter>
      </parameters>
    </function-macro>
    <function name="query_extension" c:identifier="gdk_gl_query_extension">
      <doc xml:space="preserve"
           filename="x11/gdkglquery-x11.c"
           line="38">Indicates whether the window system supports the OpenGL extension
(GLX, WGL, etc.).</doc>
      <source-position filename="gdkglquery.h" line="28"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="x11/gdkglquery-x11.c"
             line="44">TRUE if OpenGL is supported, FALSE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="query_extension_for_display"
              c:identifier="gdk_gl_query_extension_for_display">
      <doc xml:space="preserve"
           filename="x11/gdkglquery-x11.c"
           line="53">Indicates whether the window system supports the OpenGL extension
(GLX, WGL, etc.).</doc>
      <source-position filename="gdkglquery.h" line="31"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="x11/gdkglquery-x11.c"
             line="60">TRUE if OpenGL is supported, FALSE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="display" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglquery-x11.c"
               line="55">the #GdkDisplay where the query is sent to.</doc>
          <type name="Gdk.Display" c:type="GdkDisplay*"/>
        </parameter>
      </parameters>
    </function>
    <function name="query_gl_extension"
              c:identifier="gdk_gl_query_gl_extension">
      <doc xml:space="preserve"
           filename="gdkglquery.c"
           line="44">Determines whether a given OpenGL extension is supported.

There must be a valid current rendering context to call
gdk_gl_query_gl_extension().

gdk_gl_query_gl_extension() returns information about OpenGL extensions
only. This means that window system dependent extensions (for example,
GLX extensions) are not reported by gdk_gl_query_gl_extension().</doc>
      <source-position filename="gdkglquery.h" line="42"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="gdkglquery.c"
             line="57">TRUE if the OpenGL extension is supported, FALSE if not
              supported.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="extension" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="gdkglquery.c"
               line="46">name of OpenGL extension.</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="query_version" c:identifier="gdk_gl_query_version">
      <doc xml:space="preserve"
           filename="x11/gdkglquery-x11.c"
           line="71">Returns the version numbers of the OpenGL extension to the window system.

In the X Window System, it returns the GLX version.

In the Microsoft Windows, it returns the Windows version.</doc>
      <source-position filename="gdkglquery.h" line="34"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="x11/gdkglquery-x11.c"
             line="82">FALSE if it fails, TRUE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="major"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full">
          <doc xml:space="preserve"
               filename="x11/gdkglquery-x11.c"
               line="73">returns the major version number of the OpenGL extension.</doc>
          <type name="gint" c:type="int*"/>
        </parameter>
        <parameter name="minor"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full">
          <doc xml:space="preserve"
               filename="x11/gdkglquery-x11.c"
               line="74">returns the minor version number of the OpenGL extension.</doc>
          <type name="gint" c:type="int*"/>
        </parameter>
      </parameters>
    </function>
    <function name="query_version_for_display"
              c:identifier="gdk_gl_query_version_for_display">
      <doc xml:space="preserve"
           filename="x11/gdkglquery-x11.c"
           line="92">Returns the version numbers of the OpenGL extension to the window system.

In the X Window System, it returns the GLX version.

In the Microsoft Windows, it returns the Windows version.</doc>
      <source-position filename="gdkglquery.h" line="38"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="x11/gdkglquery-x11.c"
             line="104">FALSE if it fails, TRUE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="display" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="x11/gdkglquery-x11.c"
               line="94">the #GdkDisplay where the query is sent to.</doc>
          <type name="Gdk.Display" c:type="GdkDisplay*"/>
        </parameter>
        <parameter name="major"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full">
          <doc xml:space="preserve"
               filename="x11/gdkglquery-x11.c"
               line="95">returns the major version number of the OpenGL extension.</doc>
          <type name="gint" c:type="int*"/>
        </parameter>
        <parameter name="minor"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full">
          <doc xml:space="preserve"
               filename="x11/gdkglquery-x11.c"
               line="96">returns the minor version number of the OpenGL extension.</doc>
          <type name="gint" c:type="int*"/>
        </parameter>
      </parameters>
    </function>
    <function-macro name="window_get_gl_drawable"
                    c:identifier="gdk_window_get_gl_drawable"
                    introspectable="0">
      <source-position filename="gdkglwindow.h" line="76"/>
      <parameters>
        <parameter name="window">
        </parameter>
      </parameters>
    </function-macro>
  </namespace>
</repository>
