<?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="Cogl" version="3"/>
  <include name="Pango" version="1.0"/>
  <include name="PangoCairo" version="1.0"/>
  <package name="mutter-cogl-pango-3"/>
  <c:include name="cogl-pango/cogl-pango.h"/>
  <namespace name="CoglPango"
             version="3"
             shared-library="libmutter-cogl-3.so,libmutter-cogl-pango-3.so"
             c:identifier-prefixes="CoglPango"
             c:symbol-prefixes="cogl_pango">
    <alias name="FontMap" c:type="CoglPangoFontMap">
      <type name="PangoCairo.FontMap" c:type="PangoCairoFontMap"/>
    </alias>
    <class name="Renderer"
           c:symbol-prefix="renderer"
           c:type="CoglPangoRenderer"
           parent="Pango.Renderer"
           glib:type-name="CoglPangoRenderer"
           glib:get-type="cogl_pango_renderer_get_type"
           glib:type-struct="RendererClass">
      <property name="context"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="gpointer" c:type="gpointer"/>
      </property>
    </class>
    <record name="RendererClass"
            c:type="CoglPangoRendererClass"
            disguised="1"
            glib:is-gtype-struct-for="Renderer">
    </record>
    <function name="ensure_glyph_cache_for_layout"
              c:identifier="cogl_pango_ensure_glyph_cache_for_layout"
              version="1.0">
      <doc xml:space="preserve">This updates any internal glyph cache textures as necessary to be
able to render the given @layout.

This api should be used to avoid mid-scene modifications of
glyph-cache textures which can lead to undefined rendering results.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="layout" transfer-ownership="none">
          <doc xml:space="preserve">A #PangoLayout</doc>
          <type name="Pango.Layout" c:type="PangoLayout*"/>
        </parameter>
      </parameters>
    </function>
    <function name="font_map_clear_glyph_cache"
              c:identifier="cogl_pango_font_map_clear_glyph_cache"
              version="1.0">
      <doc xml:space="preserve">Clears the glyph cache for @font_map.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="font_map" transfer-ownership="none">
          <doc xml:space="preserve">a #CoglPangoFontMap</doc>
          <type name="FontMap" c:type="CoglPangoFontMap*"/>
        </parameter>
      </parameters>
    </function>
    <function name="font_map_create_context"
              c:identifier="cogl_pango_font_map_create_context">
      <doc xml:space="preserve">Create a #PangoContext for the given @font_map.</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">the newly created context: free with g_object_unref().</doc>
        <type name="Pango.Context" c:type="PangoContext*"/>
      </return-value>
      <parameters>
        <parameter name="font_map" transfer-ownership="none">
          <doc xml:space="preserve">a #CoglPangoFontMap</doc>
          <type name="FontMap" c:type="CoglPangoFontMap*"/>
        </parameter>
      </parameters>
    </function>
    <function name="font_map_get_renderer"
              c:identifier="cogl_pango_font_map_get_renderer"
              version="1.0">
      <doc xml:space="preserve">Retrieves the #CoglPangoRenderer for the passed @font_map.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">a #PangoRenderer</doc>
        <type name="Pango.Renderer" c:type="PangoRenderer*"/>
      </return-value>
      <parameters>
        <parameter name="font_map" transfer-ownership="none">
          <doc xml:space="preserve">a #CoglPangoFontMap</doc>
          <type name="FontMap" c:type="CoglPangoFontMap*"/>
        </parameter>
      </parameters>
    </function>
    <function name="font_map_get_use_mipmapping"
              c:identifier="cogl_pango_font_map_get_use_mipmapping"
              version="1.0">
      <doc xml:space="preserve">Retrieves whether the #CoglPangoRenderer used by @font_map will use
mipmapping when rendering the glyphs.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">%TRUE if mipmapping is used, %FALSE otherwise.</doc>
        <type name="Cogl.Bool" c:type="CoglBool"/>
      </return-value>
      <parameters>
        <parameter name="font_map" transfer-ownership="none">
          <doc xml:space="preserve">a #CoglPangoFontMap</doc>
          <type name="FontMap" c:type="CoglPangoFontMap*"/>
        </parameter>
      </parameters>
    </function>
    <function name="font_map_new"
              c:identifier="cogl_pango_font_map_new"
              version="1.14">
      <doc xml:space="preserve">Creates a new font map.</doc>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve">the newly created #PangoFontMap</doc>
        <type name="Pango.FontMap" c:type="PangoFontMap*"/>
      </return-value>
    </function>
    <function name="font_map_set_resolution"
              c:identifier="cogl_pango_font_map_set_resolution"
              version="1.14">
      <doc xml:space="preserve">Sets the resolution for the @font_map. This is a scale factor
between points specified in a #PangoFontDescription and Cogl units.
The default value is %96, meaning that a 10 point font will be 13
units high. (10 * 96. / 72. = 13.3).</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="font_map" transfer-ownership="none">
          <doc xml:space="preserve">a #CoglPangoFontMap</doc>
          <type name="FontMap" c:type="CoglPangoFontMap*"/>
        </parameter>
        <parameter name="dpi" transfer-ownership="none">
          <doc xml:space="preserve">The resolution in "dots per inch". (Physical inches aren't
      actually involved; the terminology is conventional.)</doc>
          <type name="gdouble" c:type="double"/>
        </parameter>
      </parameters>
    </function>
    <function name="font_map_set_use_mipmapping"
              c:identifier="cogl_pango_font_map_set_use_mipmapping"
              version="1.0">
      <doc xml:space="preserve">Sets whether the renderer for the passed font map should use
mipmapping when rendering a #PangoLayout.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="font_map" transfer-ownership="none">
          <doc xml:space="preserve">a #CoglPangoFontMap</doc>
          <type name="FontMap" c:type="CoglPangoFontMap*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve">%TRUE to enable the use of mipmapping</doc>
          <type name="Cogl.Bool" c:type="CoglBool"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_layout"
              c:identifier="cogl_pango_render_layout"
              version="1.0"
              deprecated="1"
              deprecated-version="1.16">
      <doc xml:space="preserve">Draws a solidly coloured @layout on the given @framebuffer at (@x,
@y) within the @framebuffer&lt;!-- --&gt;'s current model-view coordinate
space.</doc>
      <doc-deprecated xml:space="preserve">Use cogl_pango_show_layout() instead</doc-deprecated>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="layout" transfer-ownership="none">
          <doc xml:space="preserve">a #PangoLayout</doc>
          <type name="Pango.Layout" c:type="PangoLayout*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <doc xml:space="preserve">X coordinate to render the layout at</doc>
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <doc xml:space="preserve">Y coordinate to render the layout at</doc>
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <doc xml:space="preserve">color to use when rendering the layout</doc>
          <type name="Cogl.Color" c:type="const CoglColor*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_layout_line"
              c:identifier="cogl_pango_render_layout_line"
              version="1.0"
              deprecated="1"
              deprecated-version="1.16">
      <doc xml:space="preserve">Renders @line at the given coordinates using the given color.</doc>
      <doc-deprecated xml:space="preserve">Use cogl_pango_show_layout() instead</doc-deprecated>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="line" transfer-ownership="none">
          <doc xml:space="preserve">a #PangoLayoutLine</doc>
          <type name="Pango.LayoutLine" c:type="PangoLayoutLine*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <doc xml:space="preserve">X coordinate to render the line at</doc>
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <doc xml:space="preserve">Y coordinate to render the line at</doc>
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <doc xml:space="preserve">color to use when rendering the line</doc>
          <type name="Cogl.Color" c:type="const CoglColor*"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_layout_subpixel"
              c:identifier="cogl_pango_render_layout_subpixel"
              version="1.0"
              deprecated="1"
              deprecated-version="1.16">
      <doc xml:space="preserve">Draws a solidly coloured @layout on the given @framebuffer at (@x,
@y) within the @framebuffer&lt;!-- --&gt;'s current model-view coordinate
space.</doc>
      <doc-deprecated xml:space="preserve">Use cogl_pango_show_layout() instead</doc-deprecated>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="layout" transfer-ownership="none">
          <doc xml:space="preserve">a #PangoLayout</doc>
          <type name="Pango.Layout" c:type="PangoLayout*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <doc xml:space="preserve">X coordinate (in Pango units) to render the layout at</doc>
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <doc xml:space="preserve">Y coordinate (in Pango units) to render the layout at</doc>
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <doc xml:space="preserve">color to use when rendering the layout</doc>
          <type name="Cogl.Color" c:type="const CoglColor*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="show_layout"
              c:identifier="cogl_pango_show_layout"
              version="1.14"
              introspectable="0">
      <doc xml:space="preserve">Draws a solidly coloured @layout on the given @framebuffer at (@x,
@y) within the @framebuffer&lt;!-- --&gt;'s current model-view coordinate
space.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="framebuffer" transfer-ownership="none">
          <doc xml:space="preserve">A #CoglFramebuffer to draw too.</doc>
          <type c:type="CoglFramebuffer*"/>
        </parameter>
        <parameter name="layout" transfer-ownership="none">
          <doc xml:space="preserve">a #PangoLayout</doc>
          <type name="Pango.Layout" c:type="PangoLayout*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <doc xml:space="preserve">X coordinate to render the layout at</doc>
          <type name="gfloat" c:type="float"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <doc xml:space="preserve">Y coordinate to render the layout at</doc>
          <type name="gfloat" c:type="float"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <doc xml:space="preserve">color to use when rendering the layout</doc>
          <type name="Cogl.Color" c:type="const CoglColor*"/>
        </parameter>
      </parameters>
    </function>
    <function name="show_layout_line"
              c:identifier="cogl_pango_show_layout_line"
              version="1.14"
              introspectable="0">
      <doc xml:space="preserve">Draws a solidly coloured @line on the given @framebuffer at (@x,
@y) within the @framebuffer&lt;!-- --&gt;'s current model-view coordinate
space.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="framebuffer" transfer-ownership="none">
          <doc xml:space="preserve">A #CoglFramebuffer to draw too.</doc>
          <type c:type="CoglFramebuffer*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <doc xml:space="preserve">a #PangoLayoutLine</doc>
          <type name="Pango.LayoutLine" c:type="PangoLayoutLine*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <doc xml:space="preserve">X coordinate to render the line at</doc>
          <type name="gfloat" c:type="float"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <doc xml:space="preserve">Y coordinate to render the line at</doc>
          <type name="gfloat" c:type="float"/>
        </parameter>
        <parameter name="color" transfer-ownership="none">
          <doc xml:space="preserve">color to use when rendering the line</doc>
          <type name="Cogl.Color" c:type="const CoglColor*"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
