<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
  "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
[
<!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
<!ENTITY version SYSTEM "version.xml">
]>
<refentry id="pango-Modules">
<refmeta>
<refentrytitle role="top_of_page" id="pango-Modules.top_of_page">Modules</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>PANGO Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>Modules</refname>
<refpurpose>Support for loadable modules</refpurpose>
</refnamediv>

<refsect1 id="pango-Modules.functions" role="functions_proto">
<title role="functions_proto.title">Functions</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="functions_return" colwidth="150px"/>
<colspec colname="functions_name"/>
<tbody>
<row><entry role="function_type"><link linkend="PangoMap"><returnvalue>PangoMap</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="pango-find-map">pango_find_map</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="PangoEngine"><returnvalue>PangoEngine</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="pango-map-get-engine">pango_map_get_engine</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="pango-map-get-engines">pango_map_get_engines</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="pango-module-register">pango_module_register</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="pango-Modules.other" role="other_proto">
<title role="other_proto.title">Types and Values</title>
<informaltable role="enum_members_table" pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="name" colwidth="150px"/>
<colspec colname="description"/>
<tbody>
<row><entry role="datatype_keyword">struct</entry><entry role="function_name"><link linkend="PangoIncludedModule">PangoIncludedModule</link></entry></row>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="PangoMap">PangoMap</link></entry></row>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="PangoMapEntry">PangoMapEntry</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>


<refsect1 id="pango-Modules.description" role="desc">
<title role="desc.title">Description</title>
<para>Functions and macros in this section were used to support
loading dynamic modules that add engines to Pango at run time.</para>
<para>That is no longer the case, and these APIs should not be
used anymore.</para>

</refsect1>
<refsect1 id="pango-Modules.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="pango-find-map" role="function" condition="deprecated:1.38">
<title>pango_find_map&#160;()</title>
<indexterm zone="pango-find-map" role="deprecated"><primary>pango_find_map</primary></indexterm>
<programlisting language="C"><link linkend="PangoMap"><returnvalue>PangoMap</returnvalue></link>&#160;*
pango_find_map (<parameter><link linkend="PangoLanguage"><type>PangoLanguage</type></link> *language</parameter>,
                <parameter><link linkend="guint"><type>guint</type></link> engine_type_id</parameter>,
                <parameter><link linkend="guint"><type>guint</type></link> render_type_id</parameter>);</programlisting>
<warning><para><literal>pango_find_map</literal> has been deprecated since version 1.38 and should not be used in newly-written code.</para></warning>
<para>Do not use.  Does not do anything.</para>

<para><emphasis role="annotation">[<acronym>skip</acronym>]</emphasis></para><refsect3 id="pango-find-map.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>language</para></entry>
<entry role="parameter_description"><para>the language tag for which to find the map</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>engine_type_id</para></entry>
<entry role="parameter_description"><para>the engine type for the map to find</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>render_type_id</para></entry>
<entry role="parameter_description"><para>the render type for the map to find</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="pango-find-map.returns" role="returns">
<title>Returns</title>
<para><link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>][<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="pango-map-get-engine" role="function" condition="deprecated:1.38">
<title>pango_map_get_engine&#160;()</title>
<indexterm zone="pango-map-get-engine" role="deprecated"><primary>pango_map_get_engine</primary></indexterm>
<programlisting language="C"><link linkend="PangoEngine"><returnvalue>PangoEngine</returnvalue></link>&#160;*
pango_map_get_engine (<parameter><link linkend="PangoMap"><type>PangoMap</type></link> *map</parameter>,
                      <parameter><link linkend="PangoScript"><type>PangoScript</type></link> script</parameter>);</programlisting>
<warning><para><literal>pango_map_get_engine</literal> has been deprecated since version 1.38 and should not be used in newly-written code.</para></warning>
<para>Do not use.  Does not do anything.</para>

<para><emphasis role="annotation">[<acronym>skip</acronym>]</emphasis></para><refsect3 id="pango-map-get-engine.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>map</para></entry>
<entry role="parameter_description"><para>a <link linkend="PangoMap"><type>PangoMap</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>script</para></entry>
<entry role="parameter_description"><para>a <link linkend="PangoScript"><type>PangoScript</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="pango-map-get-engine.returns" role="returns">
<title>Returns</title>
<para><link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>][<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="pango-map-get-engines" role="function" condition="deprecated:1.38|since:1.4">
<title>pango_map_get_engines&#160;()</title>
<indexterm zone="pango-map-get-engines" role="deprecated"><primary>pango_map_get_engines</primary></indexterm><indexterm zone="pango-map-get-engines" role="1.4"><primary>pango_map_get_engines</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
pango_map_get_engines (<parameter><link linkend="PangoMap"><type>PangoMap</type></link> *map</parameter>,
                       <parameter><link linkend="PangoScript"><type>PangoScript</type></link> script</parameter>,
                       <parameter><link linkend="GSList"><type>GSList</type></link> **exact_engines</parameter>,
                       <parameter><link linkend="GSList"><type>GSList</type></link> **fallback_engines</parameter>);</programlisting>
<warning><para><literal>pango_map_get_engines</literal> has been deprecated since version 1.38 and should not be used in newly-written code.</para></warning>
<para>Do not use.  Does not do anything.</para>

<para><emphasis role="annotation">[<acronym>skip</acronym>]</emphasis></para><refsect3 id="pango-map-get-engines.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>map</para></entry>
<entry role="parameter_description"><para>a <link linkend="PangoMap"><type>PangoMap</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>script</para></entry>
<entry role="parameter_description"><para>a <link linkend="PangoScript"><type>PangoScript</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>exact_engines</para></entry>
<entry role="parameter_description"><para>location to store list of engines that exactly
handle this script. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>nullable</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>fallback_engines</para></entry>
<entry role="parameter_description"><para>location to store list of engines that
approximately handle this script. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>nullable</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para role="since">Since: <link linkend="api-index-1.4">1.4</link></para></refsect2>
<refsect2 id="pango-module-register" role="function" condition="deprecated:1.38">
<title>pango_module_register&#160;()</title>
<indexterm zone="pango-module-register" role="deprecated"><primary>pango_module_register</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
pango_module_register (<parameter><link linkend="PangoIncludedModule"><type>PangoIncludedModule</type></link> *module</parameter>);</programlisting>
<warning><para><literal>pango_module_register</literal> has been deprecated since version 1.38 and should not be used in newly-written code.</para></warning>
<para>Do not use.  Does not do anything.</para>

<para><emphasis role="annotation">[<acronym>skip</acronym>]</emphasis></para><refsect3 id="pango-module-register.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>module</para></entry>
<entry role="parameter_description"><para>a <link linkend="PangoIncludedModule"><type>PangoIncludedModule</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="pango-Modules.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="PangoIncludedModule" role="struct" condition="deprecated:1.38">
<title>struct PangoIncludedModule</title>
<indexterm zone="PangoIncludedModule" role="deprecated"><primary>PangoIncludedModule</primary></indexterm>
<programlisting language="C">struct PangoIncludedModule {
  void (*list) (PangoEngineInfo **engines,
		int              *n_engines);
  void (*init) (GTypeModule      *module);
  void (*exit) (void);
  PangoEngine *(*create) (const char       *id);
};
</programlisting>
<warning><para><literal>PangoIncludedModule</literal> has been deprecated since version 1.38 and should not be used in newly-written code.</para></warning>
<para>The <link linkend="PangoIncludedModule"><type>PangoIncludedModule</type></link> structure for a statically linked module
contains the functions that would otherwise be loaded from a dynamically
loaded module.</para>
<refsect3 id="PangoIncludedModule.members" role="struct_members">
<title>Members</title>
<informaltable role="struct_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="struct_members_name" colwidth="300px"/>
<colspec colname="struct_members_description"/>
<colspec colname="struct_members_annotations" colwidth="200px"/>
<tbody>
<row role="member"><entry role="struct_member_name"><para><structfield id="PangoIncludedModule.list">list</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>a function that lists the engines defined in this module.</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="PangoIncludedModule.init">init</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>a function to initialize the module.</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="PangoIncludedModule.exit">exit</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>a function to finalize the module.</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="PangoIncludedModule.create">create</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>a function to create an engine, given the engine name.</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3>
</refsect2>
<refsect2 id="PangoMap" role="struct" condition="deprecated:">
<title>PangoMap</title>
<indexterm zone="PangoMap" role="deprecated"><primary>PangoMap</primary></indexterm>
<programlisting language="C">typedef struct _PangoMap PangoMap;</programlisting>
<warning><para><literal>PangoMap</literal> is deprecated and should not be used in newly-written code.</para></warning>
</refsect2>
<refsect2 id="PangoMapEntry" role="struct" condition="deprecated:">
<title>PangoMapEntry</title>
<indexterm zone="PangoMapEntry" role="deprecated"><primary>PangoMapEntry</primary></indexterm>
<programlisting language="C">typedef struct _PangoMapEntry PangoMapEntry;</programlisting>
<warning><para><literal>PangoMapEntry</literal> is deprecated and should not be used in newly-written code.</para></warning>
</refsect2>

</refsect1>

</refentry>
