Files
gimp/devel-docs/libgimp/html/libgimp-gimp.html
2021-07-18 14:31:43 -04:00

1857 lines
85 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>gimp: GIMP Library Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="GIMP Library Reference Manual">
<link rel="up" href="libgimp-general.html" title="Functions not Related to Specific Images">
<link rel="prev" href="libgimp-general.html" title="Functions not Related to Specific Images">
<link rel="next" href="libgimp-gimpenums.html" title="gimpenums">
<meta name="generator" content="GTK-Doc V1.33.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
<a href="#libgimp-gimp.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="libgimp-general.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="libgimp-general.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="libgimp-gimpenums.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="libgimp-gimp"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="libgimp-gimp.top_of_page"></a>gimp</span></h2>
<p>gimp — Miscellaneous procedures</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="libgimp-gimp.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_proto_type">
<col class="functions_proto_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-version" title="gimp_version ()">gimp_version</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gint</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-getpid" title="gimp_getpid ()">gimp_getpid</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="libgimp-gimp.html#GimpInitProc" title="GimpInitProc ()">*GimpInitProc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="libgimp-gimp.html#GimpQuitProc" title="GimpQuitProc ()">*GimpQuitProc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="libgimp-gimp.html#GimpQueryProc" title="GimpQueryProc ()">*GimpQueryProc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="libgimp-gimp.html#GimpRunProc" title="GimpRunProc ()">*GimpRunProc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="libgimp-gimp.html#MAIN:CAPS" title="MAIN">MAIN</a></td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gint</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-main" title="gimp_main ()">gimp_main</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-quit" title="gimp_quit ()">gimp_quit</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-install-procedure" title="gimp_install_procedure ()">gimp_install_procedure</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-install-temp-proc" title="gimp_install_temp_proc ()">gimp_install_temp_proc</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-uninstall-temp-proc" title="gimp_uninstall_temp_proc ()">gimp_uninstall_temp_proc</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="returnvalue">GimpParam</span></a> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-run-procedure" title="gimp_run_procedure ()">gimp_run_procedure</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="returnvalue">GimpParam</span></a> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-run-procedure2" title="gimp_run_procedure2 ()">gimp_run_procedure2</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-destroy-params" title="gimp_destroy_params ()">gimp_destroy_params</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-destroy-paramdefs" title="gimp_destroy_paramdefs ()">gimp_destroy_paramdefs</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-get-pdb-error" title="gimp_get_pdb_error ()">gimp_get_pdb_error</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../html/libgimpbase-gimpbaseenums.html#GimpPDBStatusType"><span class="returnvalue">GimpPDBStatusType</span></a>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-get-pdb-status" title="gimp_get_pdb_status ()">gimp_get_pdb_status</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-tile-width" title="gimp_tile_width ()">gimp_tile_width</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-tile-height" title="gimp_tile_height ()">gimp_tile_height</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gint</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-shm-ID" title="gimp_shm_ID ()">gimp_shm_ID</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guchar</span> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-shm-addr" title="gimp_shm_addr ()">gimp_shm_addr</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gdouble</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-gamma" title="gimp_gamma ()">gimp_gamma</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-install-cmap" title="gimp_install_cmap ()">gimp_install_cmap</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gint</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-min-colors" title="gimp_min_colors ()">gimp_min_colors</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-show-tool-tips" title="gimp_show_tool_tips ()">gimp_show_tool_tips</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-show-help-button" title="gimp_show_help_button ()">gimp_show_help_button</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-export-color-profile" title="gimp_export_color_profile ()">gimp_export_color_profile</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-export-exif" title="gimp_export_exif ()">gimp_export_exif</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-export-iptc" title="gimp_export_iptc ()">gimp_export_iptc</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-export-xmp" title="gimp_export_xmp ()">gimp_export_xmp</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../html/libgimpbase-gimpbaseenums.html#GimpCheckSize"><span class="returnvalue">GimpCheckSize</span></a>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-check-size" title="gimp_check_size ()">gimp_check_size</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../html/libgimpbase-gimpbaseenums.html#GimpCheckType"><span class="returnvalue">GimpCheckType</span></a>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-check-type" title="gimp_check_type ()">gimp_check_type</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gint32</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-default-display" title="gimp_default_display ()">gimp_default_display</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-wm-class" title="gimp_wm_class ()">gimp_wm_class</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-display-name" title="gimp_display_name ()">gimp_display_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gint</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-monitor-number" title="gimp_monitor_number ()">gimp_monitor_number</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint32</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-user-time" title="gimp_user_time ()">gimp_user_time</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-icon-theme-dir" title="gimp_icon_theme_dir ()">gimp_icon_theme_dir</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-get-progname" title="gimp_get_progname ()">gimp_get_progname</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-extension-enable" title="gimp_extension_enable ()">gimp_extension_enable</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-extension-ack" title="gimp_extension_ack ()">gimp_extension_ack</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-extension-process" title="gimp_extension_process ()">gimp_extension_process</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-attach-parasite" title="gimp_attach_parasite ()">gimp_attach_parasite</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-detach-parasite" title="gimp_detach_parasite ()">gimp_detach_parasite</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../html/libgimpbase-GimpParasite.html#GimpParasite"><span class="returnvalue">GimpParasite</span></a> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-parasite-find" title="gimp_parasite_find ()">gimp_parasite_find</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-parasite-list" title="gimp_parasite_list ()">gimp_parasite_list</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../html/libgimpbase-GimpParasite.html#GimpParasite"><span class="returnvalue">GimpParasite</span></a> *
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-get-parasite" title="gimp_get_parasite ()">gimp_get_parasite</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gchar</span> **
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-get-parasite-list" title="gimp_get_parasite_list ()">gimp_get_parasite_list</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-parasite-attach" title="gimp_parasite_attach ()">gimp_parasite_attach</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-parasite-detach" title="gimp_parasite_detach ()">gimp_parasite_detach</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimp-gimp.html#gimp-attach-new-parasite" title="gimp_attach_new_parasite ()">gimp_attach_new_parasite</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="libgimp-gimp.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="other_proto_type">
<col class="other_proto_name">
</colgroup>
<tbody>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="libgimp-gimp.html#gimp-get-data" title="gimp_get_data">gimp_get_data</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="libgimp-gimp.html#gimp-get-data-size" title="gimp_get_data_size">gimp_get_data_size</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="libgimp-gimp.html#gimp-set-data" title="gimp_set_data">gimp_set_data</a></td>
</tr>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="libgimp-gimp.html#GimpPlugInInfo" title="GimpPlugInInfo">GimpPlugInInfo</a></td>
</tr>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="libgimp-gimp.html#GimpParamDef" title="GimpParamDef">GimpParamDef</a></td>
</tr>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="libgimp-gimp.html#GimpParamRegion" title="GimpParamRegion">GimpParamRegion</a></td>
</tr>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="libgimp-gimp.html#GimpParamData" title="GimpParamData">GimpParamData</a></td>
</tr>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam">GimpParam</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="libgimp-gimp.description"></a><h2>Description</h2>
<p>Miscellaneous procedures not fitting in any category.</p>
</div>
<div class="refsect1">
<a name="libgimp-gimp.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gimp-version"></a><h3>gimp_version ()</h3>
<pre class="programlisting"><span class="returnvalue">gchar</span> *
gimp_version (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the host GIMP version.</p>
<p>This procedure returns the version number of the currently running
GIMP.</p>
<div class="refsect3">
<a name="gimp-version.returns"></a><h4>Returns</h4>
<p> GIMP version number.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-getpid"></a><h3>gimp_getpid ()</h3>
<pre class="programlisting"><span class="returnvalue">gint</span>
gimp_getpid (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the PID of the host GIMP process.</p>
<p>This procedure returns the process ID of the currently running GIMP.</p>
<div class="refsect3">
<a name="gimp-getpid.returns"></a><h4>Returns</h4>
<p> The PID.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-4.html#api-index-2.4">2.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GimpInitProc"></a><h3>GimpInitProc ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*GimpInitProc<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="GimpQuitProc"></a><h3>GimpQuitProc ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*GimpQuitProc<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="GimpQueryProc"></a><h3>GimpQueryProc ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*GimpQueryProc<span class="c_punctuation">)</span> (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="GimpRunProc"></a><h3>GimpRunProc ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*GimpRunProc<span class="c_punctuation">)</span> (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_params</code></em>,
<em class="parameter"><code>const <a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="type">GimpParam</span></a> *param</code></em>,
<em class="parameter"><code><span class="type">gint</span> *n_return_vals</code></em>,
<em class="parameter"><code><a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="type">GimpParam</span></a> **return_vals</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="MAIN:CAPS"></a><h3>MAIN</h3>
<pre class="programlisting">#define MAIN()</pre>
<p>A macro that expands to the appropriate <code class="function">main()</code> function for the
platform being compiled for.</p>
<p>To use this macro, simply place a line that contains just the code
<a class="link" href="libgimp-gimp.html#MAIN:CAPS" title="MAIN"><code class="function">MAIN()</code></a> at the toplevel of your file. No semicolon should be used.</p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-main"></a><h3>gimp_main ()</h3>
<pre class="programlisting"><span class="returnvalue">gint</span>
gimp_main (<em class="parameter"><code>const <a class="link" href="libgimp-gimp.html#GimpPlugInInfo" title="GimpPlugInInfo"><span class="type">GimpPlugInInfo</span></a> *info</code></em>,
<em class="parameter"><code><span class="type">gint</span> argc</code></em>,
<em class="parameter"><code><span class="type">gchar</span> *argv[]</code></em>);</pre>
<p>The main procedure that must be called with the PLUG_IN_INFO structure
and the 'argc' and 'argv' that are passed to "main".</p>
<div class="refsect3">
<a name="gimp-main.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>info</p></td>
<td class="parameter_description"><p>the PLUG_IN_INFO structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>argc</p></td>
<td class="parameter_description"><p>the number of arguments</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>argv</p></td>
<td class="parameter_description"><p>the arguments</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-main.returns"></a><h4>Returns</h4>
<p> an exit status as defined by the C library,
on success EXIT_SUCCESS.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-quit"></a><h3>gimp_quit ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_quit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Forcefully causes the GIMP library to exit and close down its
connection to main gimp application. This function never returns.</p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-install-procedure"></a><h3>gimp_install_procedure ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_install_procedure (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *blurb</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *help</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *author</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *copyright</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *date</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *menu_label</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *image_types</code></em>,
<em class="parameter"><code><a href="../html/libgimpbase-gimpbaseenums.html#GimpPDBProcType"><span class="type">GimpPDBProcType</span></a> type</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_params</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_return_vals</code></em>,
<em class="parameter"><code>const <a class="link" href="libgimp-gimp.html#GimpParamDef" title="GimpParamDef"><span class="type">GimpParamDef</span></a> *params</code></em>,
<em class="parameter"><code>const <a class="link" href="libgimp-gimp.html#GimpParamDef" title="GimpParamDef"><span class="type">GimpParamDef</span></a> *return_vals</code></em>);</pre>
<p>Installs a new procedure with the PDB (procedural database).</p>
<p>Call this function from within your plug-in's <code class="function">query()</code> function for
each procedure your plug-in implements.</p>
<p>The <em class="parameter"><code>name</code></em>
parameter is mandatory and should be unique, or it will
overwrite an already existing procedure (overwrite procedures only
if you know what you're doing).</p>
<p>The <em class="parameter"><code>blurb</code></em>
, <em class="parameter"><code>help</code></em>
, <em class="parameter"><code>author</code></em>
, <em class="parameter"><code>copyright</code></em>
and <em class="parameter"><code>date</code></em>
parameters are
optional but then you shouldn't write procedures without proper
documentation, should you.</p>
<p><em class="parameter"><code>menu_label</code></em>
defines the label that should be used for the
procedure's menu entry. The position where to register in the menu
hierarchy is chosen using <a class="link" href="libgimp-gimpplugin.html#gimp-plugin-menu-register" title="gimp_plugin_menu_register ()"><code class="function">gimp_plugin_menu_register()</code></a>. This
function also still accepts the old (pre-2.2) way of registering a
menu entry and takes a string in the form
"&lt;Domain&gt;/Path/To/My/Menu"
(e.g. "&lt;Image&gt;/Filters/Render/Useless").</p>
<p>Note that registering a full (pre-2.2-style) menu path is
deprecated and will cause a failure in GIMP 3.0 and newer.</p>
<p>It is possible to register a procedure only for keyboard-shortcut
activation by passing a <em class="parameter"><code>menu_label</code></em>
to <a class="link" href="libgimp-gimp.html#gimp-install-procedure" title="gimp_install_procedure ()"><code class="function">gimp_install_procedure()</code></a> but
not registering any menu path with <a class="link" href="libgimp-gimpplugin.html#gimp-plugin-menu-register" title="gimp_plugin_menu_register ()"><code class="function">gimp_plugin_menu_register()</code></a>. In
this case, the given <em class="parameter"><code>menu_label</code></em>
will only be used as the
procedure's user-visible name in the keyboard shortcut editor.</p>
<p><em class="parameter"><code>image_types</code></em>
is a comma separated list of image types, or actually
drawable types, that this procedure can deal with. Wildcards are
possible here, so you could say "RGB*" instead of "RGB, RGBA" or
"*" for all image types. If the procedure doesn't need an image to
run, use the empty string.</p>
<p><em class="parameter"><code>type</code></em>
must be one of <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-PLUGIN:CAPS"><code class="literal">GIMP_PLUGIN</code></a> or <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-EXTENSION:CAPS"><code class="literal">GIMP_EXTENSION</code></a>. Note that
temporary procedures must be installed using
<a class="link" href="libgimp-gimp.html#gimp-install-temp-proc" title="gimp_install_temp_proc ()"><code class="function">gimp_install_temp_proc()</code></a>.</p>
<p>NOTE: Unlike the GIMP 1.2 API, <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-EXTENSION:CAPS"><code class="literal">GIMP_EXTENSION</code></a> no longer means
that the procedure's menu prefix is &lt;Toolbox&gt;, but that
it will install temporary procedures. Therefore, the GIMP core
will wait until the <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-EXTENSION:CAPS"><code class="literal">GIMP_EXTENSION</code></a> procedure has called
<a class="link" href="libgimp-gimp.html#gimp-extension-ack" title="gimp_extension_ack ()"><code class="function">gimp_extension_ack()</code></a>, which means that the procedure has done
its initialization, installed its temporary procedures and is
ready to run.</p>
<p><span class="emphasis"><em>Not calling <a class="link" href="libgimp-gimp.html#gimp-extension-ack" title="gimp_extension_ack ()"><code class="function">gimp_extension_ack()</code></a> from a <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-EXTENSION:CAPS"><code class="literal">GIMP_EXTENSION</code></a>
procedure will cause the GIMP core to lock up.</em></span></p>
<p>Additionally, a <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-EXTENSION:CAPS"><code class="literal">GIMP_EXTENSION</code></a> procedure with no parameters
(<em class="parameter"><code>n_params</code></em>
== 0 and <em class="parameter"><code>params</code></em>
== <span class="type">NULL</span>) is an "automatic" extension
that will be automatically started on each GIMP startup.</p>
<div class="refsect3">
<a name="gimp-install-procedure.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>the procedure's name.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>blurb</p></td>
<td class="parameter_description"><p>a short text describing what the procedure does.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>help</p></td>
<td class="parameter_description"><p>the help text for the procedure (usually considerably
longer than <em class="parameter"><code>blurb</code></em>
).</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>author</p></td>
<td class="parameter_description"><p>the procedure's author(s).</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>copyright</p></td>
<td class="parameter_description"><p>the procedure's copyright.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>date</p></td>
<td class="parameter_description"><p>the date the procedure was added.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>menu_label</p></td>
<td class="parameter_description"><p>the label to use for the procedure's menu entry,
or <span class="type">NULL</span> if the procedure has no menu entry.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>image_types</p></td>
<td class="parameter_description"><p>the drawable types the procedure can handle.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>type</p></td>
<td class="parameter_description"><p>the type of the procedure.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_params</p></td>
<td class="parameter_description"><p>the number of parameters the procedure takes.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_return_vals</p></td>
<td class="parameter_description"><p>the number of return values the procedure returns.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>params</p></td>
<td class="parameter_description"><p>the procedure's parameters.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>return_vals</p></td>
<td class="parameter_description"><p>the procedure's return values.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-install-temp-proc"></a><h3>gimp_install_temp_proc ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_install_temp_proc (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *blurb</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *help</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *author</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *copyright</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *date</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *menu_label</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *image_types</code></em>,
<em class="parameter"><code><a href="../html/libgimpbase-gimpbaseenums.html#GimpPDBProcType"><span class="type">GimpPDBProcType</span></a> type</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_params</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_return_vals</code></em>,
<em class="parameter"><code>const <a class="link" href="libgimp-gimp.html#GimpParamDef" title="GimpParamDef"><span class="type">GimpParamDef</span></a> *params</code></em>,
<em class="parameter"><code>const <a class="link" href="libgimp-gimp.html#GimpParamDef" title="GimpParamDef"><span class="type">GimpParamDef</span></a> *return_vals</code></em>,
<em class="parameter"><code><a class="link" href="libgimp-gimp.html#GimpRunProc" title="GimpRunProc ()"><span class="type">GimpRunProc</span></a> run_proc</code></em>);</pre>
<p>Installs a new temporary procedure with the PDB (procedural database).</p>
<p>A temporary procedure is a procedure which is only available while
one of your plug-in's "real" procedures is running.</p>
<p>See <a class="link" href="libgimp-gimp.html#gimp-install-procedure" title="gimp_install_procedure ()"><code class="function">gimp_install_procedure()</code></a> for most details.</p>
<p><em class="parameter"><code>type</code></em>
<span class="emphasis"><em>must</em></span> be <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-TEMPORARY:CAPS"><code class="literal">GIMP_TEMPORARY</code></a> or the function
will fail.</p>
<p><em class="parameter"><code>run_proc</code></em>
is the function which will be called to execute the
procedure.</p>
<p>NOTE: Normally, plug-in communication is triggered by the plug-in
and the GIMP core only responds to the plug-in's requests. You must
explicitly enable receiving of temporary procedure run requests
using either <a class="link" href="libgimp-gimp.html#gimp-extension-enable" title="gimp_extension_enable ()"><code class="function">gimp_extension_enable()</code></a> or
<a class="link" href="libgimp-gimp.html#gimp-extension-process" title="gimp_extension_process ()"><code class="function">gimp_extension_process()</code></a>. See this functions' documentation for
details.</p>
<div class="refsect3">
<a name="gimp-install-temp-proc.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>the procedure's name.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>blurb</p></td>
<td class="parameter_description"><p>a short text describing what the procedure does.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>help</p></td>
<td class="parameter_description"><p>the help text for the procedure (usually considerably
longer than <em class="parameter"><code>blurb</code></em>
).</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>author</p></td>
<td class="parameter_description"><p>the procedure's author(s).</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>copyright</p></td>
<td class="parameter_description"><p>the procedure's copyright.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>date</p></td>
<td class="parameter_description"><p>the date the procedure was added.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>menu_label</p></td>
<td class="parameter_description"><p>the procedure's menu label, or <span class="type">NULL</span> if the procedure has
no menu entry.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>image_types</p></td>
<td class="parameter_description"><p>the drawable types the procedure can handle.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>type</p></td>
<td class="parameter_description"><p>the type of the procedure.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_params</p></td>
<td class="parameter_description"><p>the number of parameters the procedure takes.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_return_vals</p></td>
<td class="parameter_description"><p>the number of return values the procedure returns.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>params</p></td>
<td class="parameter_description"><p>the procedure's parameters.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>return_vals</p></td>
<td class="parameter_description"><p>the procedure's return values.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>run_proc</p></td>
<td class="parameter_description"><p>the function to call for executing the procedure.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-uninstall-temp-proc"></a><h3>gimp_uninstall_temp_proc ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_uninstall_temp_proc (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
<p>Uninstalls a temporary procedure which has previously been
installed using <a class="link" href="libgimp-gimp.html#gimp-install-temp-proc" title="gimp_install_temp_proc ()"><code class="function">gimp_install_temp_proc()</code></a>.</p>
<div class="refsect3">
<a name="gimp-uninstall-temp-proc.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>the procedure's name</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-run-procedure"></a><h3>gimp_run_procedure ()</h3>
<pre class="programlisting"><a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="returnvalue">GimpParam</span></a> *
gimp_run_procedure (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
<em class="parameter"><code><span class="type">gint</span> *n_return_vals</code></em>,
<em class="parameter"><code>...</code></em>);</pre>
<p>This function calls a GIMP procedure and returns its return values.</p>
<p>The procedure's parameters are given by a va_list in the format
(type, value, type, value) and must be terminated by <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-PDB-END:CAPS"><code class="literal">GIMP_PDB_END</code></a>.</p>
<p>This function converts the va_list of parameters into an array and
passes them to <a class="link" href="libgimp-gimp.html#gimp-run-procedure2" title="gimp_run_procedure2 ()"><code class="function">gimp_run_procedure2()</code></a>. Please look there for further
information.</p>
<div class="refsect3">
<a name="gimp-run-procedure.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>the name of the procedure to run</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_return_vals</p></td>
<td class="parameter_description"><p>return location for the number of return values</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>...</p></td>
<td class="parameter_description"><p>list of procedure parameters</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-run-procedure.returns"></a><h4>Returns</h4>
<p> the procedure's return values unless there was an error,
in which case the zero-th return value will be the error status, and
the first return value will be a string detailing the error.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-run-procedure2"></a><h3>gimp_run_procedure2 ()</h3>
<pre class="programlisting"><a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="returnvalue">GimpParam</span></a> *
gimp_run_procedure2 (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
<em class="parameter"><code><span class="type">gint</span> *n_return_vals</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_params</code></em>,
<em class="parameter"><code>const <a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="type">GimpParam</span></a> *params</code></em>);</pre>
<p>This function calls a GIMP procedure and returns its return values.
To get more information about the available procedures and the
parameters they expect, please have a look at the Procedure Browser
as found in the Xtns menu in GIMP's toolbox.</p>
<p>As soon as you don't need the return values any longer, you should
free them using <a class="link" href="libgimp-gimp.html#gimp-destroy-params" title="gimp_destroy_params ()"><code class="function">gimp_destroy_params()</code></a>.</p>
<div class="refsect3">
<a name="gimp-run-procedure2.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>the name of the procedure to run</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_return_vals</p></td>
<td class="parameter_description"><p>return location for the number of return values</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_params</p></td>
<td class="parameter_description"><p>the number of parameters the procedure takes.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>params</p></td>
<td class="parameter_description"><p>the procedure's parameters array.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-run-procedure2.returns"></a><h4>Returns</h4>
<p> the procedure's return values unless there was an error,
in which case the zero-th return value will be the error status, and
if there are two values returned, the other return value will be a
string detailing the error.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-destroy-params"></a><h3>gimp_destroy_params ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_destroy_params (<em class="parameter"><code><a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="type">GimpParam</span></a> *params</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_params</code></em>);</pre>
<p>Destroys a <a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="type">GimpParam</span></a> array as returned by <a class="link" href="libgimp-gimp.html#gimp-run-procedure" title="gimp_run_procedure ()"><code class="function">gimp_run_procedure()</code></a> or
<a class="link" href="libgimp-gimp.html#gimp-run-procedure2" title="gimp_run_procedure2 ()"><code class="function">gimp_run_procedure2()</code></a>.</p>
<div class="refsect3">
<a name="gimp-destroy-params.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>params</p></td>
<td class="parameter_description"><p>the <a class="link" href="libgimp-gimp.html#GimpParam" title="GimpParam"><span class="type">GimpParam</span></a> array to destroy</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_params</p></td>
<td class="parameter_description"><p>the number of elements in the array</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-destroy-paramdefs"></a><h3>gimp_destroy_paramdefs ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_destroy_paramdefs (<em class="parameter"><code><a class="link" href="libgimp-gimp.html#GimpParamDef" title="GimpParamDef"><span class="type">GimpParamDef</span></a> *paramdefs</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_params</code></em>);</pre>
<p>Destroys a <a class="link" href="libgimp-gimp.html#GimpParamDef" title="GimpParamDef"><span class="type">GimpParamDef</span></a> array as returned by
<a class="link" href="libgimp-gimpproceduraldb.html#gimp-procedural-db-proc-info" title="gimp_procedural_db_proc_info ()"><code class="function">gimp_procedural_db_proc_info()</code></a>.</p>
<div class="refsect3">
<a name="gimp-destroy-paramdefs.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>paramdefs</p></td>
<td class="parameter_description"><p>the <a class="link" href="libgimp-gimp.html#GimpParamDef" title="GimpParamDef"><span class="type">GimpParamDef</span></a> array to destroy</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_params</p></td>
<td class="parameter_description"><p>the number of elements in the array</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-get-pdb-error"></a><h3>gimp_get_pdb_error ()</h3>
<pre class="programlisting">const <span class="returnvalue">gchar</span> *
gimp_get_pdb_error (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Retrieves the error message from the last procedure call.</p>
<p>If a procedure call fails, then it might pass an error message with
the return values. Plug-ins that are using the libgimp C wrappers
don't access the procedure return values directly. Thus libgimp
stores the error message and makes it available with this
function. The next procedure call unsets the error message again.</p>
<p>The returned string is owned by libgimp and must not be freed or
modified.</p>
<div class="refsect3">
<a name="gimp-get-pdb-error.returns"></a><h4>Returns</h4>
<p> the error message</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-get-pdb-status"></a><h3>gimp_get_pdb_status ()</h3>
<pre class="programlisting"><a href="../html/libgimpbase-gimpbaseenums.html#GimpPDBStatusType"><span class="returnvalue">GimpPDBStatusType</span></a>
gimp_get_pdb_status (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Retrieves the status from the last procedure call.</p>
<div class="refsect3">
<a name="gimp-get-pdb-status.returns"></a><h4>Returns</h4>
<p> the <a href="../html/libgimpbase-gimpbaseenums.html#GimpPDBStatusType"><span class="type">GimpPDBStatusType</span></a>.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-10.html#api-index-2.10">2.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-tile-width"></a><h3>gimp_tile_width ()</h3>
<pre class="programlisting"><span class="returnvalue">guint</span>
gimp_tile_width (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the tile width GIMP is using.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-tile-width.returns"></a><h4>Returns</h4>
<p> the tile_width</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-tile-height"></a><h3>gimp_tile_height ()</h3>
<pre class="programlisting"><span class="returnvalue">guint</span>
gimp_tile_height (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the tile height GIMP is using.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-tile-height.returns"></a><h4>Returns</h4>
<p> the tile_height</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-shm-ID"></a><h3>gimp_shm_ID ()</h3>
<pre class="programlisting"><span class="returnvalue">gint</span>
gimp_shm_ID (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the shared memory ID used for passing tile data between the
GIMP core and the plug-in.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-shm-ID.returns"></a><h4>Returns</h4>
<p> the shared memory ID</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-shm-addr"></a><h3>gimp_shm_addr ()</h3>
<pre class="programlisting"><span class="returnvalue">guchar</span> *
gimp_shm_addr (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the address of the shared memory segment used for passing
tile data between the GIMP core and the plug-in.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-shm-addr.returns"></a><h4>Returns</h4>
<p> the shared memory address</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-gamma"></a><h3>gimp_gamma ()</h3>
<pre class="programlisting"><span class="returnvalue">gdouble</span>
gimp_gamma (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<div class="warning"><p><code class="literal">gimp_gamma</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Returns the global gamma value GIMP and all its plug-ins should
use.</p>
<p>This is a constant value.</p>
<p>NOTE: This function will always return 2.2, the gamma value for
sRGB. If you need the actual gamma value of a drawable, look at its
format.</p>
<p>See also: <a class="link" href="libgimp-gimpdrawable.html#gimp-drawable-get-format" title="gimp_drawable_get_format ()"><code class="function">gimp_drawable_get_format()</code></a>.</p>
<p><em class="parameter"><code>Deprecated</code></em>
: 2.8.4</p>
<div class="refsect3">
<a name="gimp-gamma.returns"></a><h4>Returns</h4>
<p> the gamma value</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-install-cmap"></a><h3>gimp_install_cmap ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_install_cmap (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<div class="warning"><p><code class="literal">gimp_install_cmap</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Returns whether or not the plug-in should allocate an own colormap
when running on an 8 bit display. See also: <a class="link" href="libgimp-gimp.html#gimp-min-colors" title="gimp_min_colors ()"><code class="function">gimp_min_colors()</code></a>.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<p><em class="parameter"><code>Deprecated</code></em>
: 2.8</p>
<div class="refsect3">
<a name="gimp-install-cmap.returns"></a><h4>Returns</h4>
<p> the install_cmap boolean</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-min-colors"></a><h3>gimp_min_colors ()</h3>
<pre class="programlisting"><span class="returnvalue">gint</span>
gimp_min_colors (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<div class="warning"><p><code class="literal">gimp_min_colors</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Returns the minimum number of colors to use when allocating an own
colormap on 8 bit displays.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<p>See also: <a class="link" href="libgimp-gimp.html#gimp-install-cmap" title="gimp_install_cmap ()"><code class="function">gimp_install_cmap()</code></a></p>
<p><em class="parameter"><code>Deprecated</code></em>
: 2.8</p>
<div class="refsect3">
<a name="gimp-min-colors.returns"></a><h4>Returns</h4>
<p> the minimum number of colors to allocate</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-show-tool-tips"></a><h3>gimp_show_tool_tips ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_show_tool_tips (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns whether or not the plug-in should show tool-tips.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-show-tool-tips.returns"></a><h4>Returns</h4>
<p> the show_tool_tips boolean</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-show-help-button"></a><h3>gimp_show_help_button ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_show_help_button (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns whether or not GimpDialog should automatically add a help
button if help_func and help_id are given.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-show-help-button.returns"></a><h4>Returns</h4>
<p> the show_help_button boolean</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-export-color-profile"></a><h3>gimp_export_color_profile ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_export_color_profile (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns whether file plug-ins should default to exporting the
image's color profile.</p>
<div class="refsect3">
<a name="gimp-export-color-profile.returns"></a><h4>Returns</h4>
<p> TRUE if preferences are set to export the color profile.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-10-4.html#api-index-2.10.4">2.10.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-export-exif"></a><h3>gimp_export_exif ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_export_exif (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns whether file plug-ins should default to exporting Exif
metadata, according preferences (original settings is <span class="type">FALSE</span> since
metadata can contain sensitive information).</p>
<div class="refsect3">
<a name="gimp-export-exif.returns"></a><h4>Returns</h4>
<p> TRUE if preferences are set to export Exif.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-10.html#api-index-2.10">2.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-export-iptc"></a><h3>gimp_export_iptc ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_export_iptc (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns whether file plug-ins should default to exporting IPTC
metadata, according preferences (original settings is <span class="type">FALSE</span> since
metadata can contain sensitive information).</p>
<div class="refsect3">
<a name="gimp-export-iptc.returns"></a><h4>Returns</h4>
<p> TRUE if preferences are set to export IPTC.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-10.html#api-index-2.10">2.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-export-xmp"></a><h3>gimp_export_xmp ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_export_xmp (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns whether file plug-ins should default to exporting XMP
metadata, according preferences (original settings is <span class="type">FALSE</span> since
metadata can contain sensitive information).</p>
<div class="refsect3">
<a name="gimp-export-xmp.returns"></a><h4>Returns</h4>
<p> TRUE if preferences are set to export XMP.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-10.html#api-index-2.10">2.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-check-size"></a><h3>gimp_check_size ()</h3>
<pre class="programlisting"><a href="../html/libgimpbase-gimpbaseenums.html#GimpCheckSize"><span class="returnvalue">GimpCheckSize</span></a>
gimp_check_size (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the size of the checkerboard to be used in previews.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-check-size.returns"></a><h4>Returns</h4>
<p> the check_size value</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-check-type"></a><h3>gimp_check_type ()</h3>
<pre class="programlisting"><a href="../html/libgimpbase-gimpbaseenums.html#GimpCheckType"><span class="returnvalue">GimpCheckType</span></a>
gimp_check_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the type of the checkerboard to be used in previews.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-check-type.returns"></a><h4>Returns</h4>
<p> the check_type value</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-default-display"></a><h3>gimp_default_display ()</h3>
<pre class="programlisting"><span class="returnvalue">gint32</span>
gimp_default_display (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the default display ID. This corresponds to the display the
running procedure's menu entry was invoked from.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-default-display.returns"></a><h4>Returns</h4>
<p> the default display ID</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-wm-class"></a><h3>gimp_wm_class ()</h3>
<pre class="programlisting">const <span class="returnvalue">gchar</span> *
gimp_wm_class (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the window manager class to be used for plug-in windows.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-wm-class.returns"></a><h4>Returns</h4>
<p> the window manager class</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-display-name"></a><h3>gimp_display_name ()</h3>
<pre class="programlisting">const <span class="returnvalue">gchar</span> *
gimp_display_name (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the display to be used for plug-in windows.</p>
<p>This is a constant value given at plug-in configuration time.
Will return <span class="type">NULL</span> if GIMP has been started with no GUI, either
via "--no-interface" flag, or a console build.</p>
<div class="refsect3">
<a name="gimp-display-name.returns"></a><h4>Returns</h4>
<p> the display name</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-monitor-number"></a><h3>gimp_monitor_number ()</h3>
<pre class="programlisting"><span class="returnvalue">gint</span>
gimp_monitor_number (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the monitor number to be used for plug-in windows.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-monitor-number.returns"></a><h4>Returns</h4>
<p> the monitor number</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-user-time"></a><h3>gimp_user_time ()</h3>
<pre class="programlisting"><span class="returnvalue">guint32</span>
gimp_user_time (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the timestamp of the user interaction that should be set on
the plug-in window. This is handled transparently, plug-in authors
do not have to care about it.</p>
<p>This is a constant value given at plug-in configuration time.</p>
<div class="refsect3">
<a name="gimp-user-time.returns"></a><h4>Returns</h4>
<p> timestamp for plug-in window</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-icon-theme-dir"></a><h3>gimp_icon_theme_dir ()</h3>
<pre class="programlisting">const <span class="returnvalue">gchar</span> *
gimp_icon_theme_dir (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="gimp-get-progname"></a><h3>gimp_get_progname ()</h3>
<pre class="programlisting">const <span class="returnvalue">gchar</span> *
gimp_get_progname (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Returns the plug-in's executable name.</p>
<div class="refsect3">
<a name="gimp-get-progname.returns"></a><h4>Returns</h4>
<p> the executable name</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-extension-enable"></a><h3>gimp_extension_enable ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_extension_enable (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Enables asynchronous processing of messages from the main GIMP
application.</p>
<p>Normally, a plug-in is not called by GIMP except for the call to
the procedure it implements. All subsequent communication is
triggered by the plug-in and all messages sent from GIMP to the
plug-in are just answers to requests the plug-in made.</p>
<p>If the plug-in however registered temporary procedures using
<a class="link" href="libgimp-gimp.html#gimp-install-temp-proc" title="gimp_install_temp_proc ()"><code class="function">gimp_install_temp_proc()</code></a>, it needs to be able to receive requests
to execute them. Usually this will be done by running
<a class="link" href="libgimp-gimp.html#gimp-extension-process" title="gimp_extension_process ()"><code class="function">gimp_extension_process()</code></a> in an endless loop.</p>
<p>If the plug-in cannot use <a class="link" href="libgimp-gimp.html#gimp-extension-process" title="gimp_extension_process ()"><code class="function">gimp_extension_process()</code></a>, i.e. if it has
a GUI and is hanging around in a <span class="type">GMainLoop</span>, it must call
<a class="link" href="libgimp-gimp.html#gimp-extension-enable" title="gimp_extension_enable ()"><code class="function">gimp_extension_enable()</code></a>.</p>
<p>Note that the plug-in does not need to be a <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-EXTENSION:CAPS"><span class="type">GIMP_EXTENSION</span></a> to
register temporary procedures.</p>
<p>See also: <a class="link" href="libgimp-gimp.html#gimp-install-procedure" title="gimp_install_procedure ()"><code class="function">gimp_install_procedure()</code></a>, <a class="link" href="libgimp-gimp.html#gimp-install-temp-proc" title="gimp_install_temp_proc ()"><code class="function">gimp_install_temp_proc()</code></a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-extension-ack"></a><h3>gimp_extension_ack ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_extension_ack (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Notify the main GIMP application that the extension has been properly
initialized and is ready to run.</p>
<p>This function <span class="emphasis"><em>must</em></span> be called from every
procedure that was registered as <a href="../html/libgimpbase-gimpbaseenums.html#GIMP-EXTENSION:CAPS"><span class="type">GIMP_EXTENSION</span></a>.</p>
<p>Subsequently, extensions can process temporary procedure run
requests using either <a class="link" href="libgimp-gimp.html#gimp-extension-enable" title="gimp_extension_enable ()"><code class="function">gimp_extension_enable()</code></a> or
<a class="link" href="libgimp-gimp.html#gimp-extension-process" title="gimp_extension_process ()"><code class="function">gimp_extension_process()</code></a>.</p>
<p>See also: <a class="link" href="libgimp-gimp.html#gimp-install-procedure" title="gimp_install_procedure ()"><code class="function">gimp_install_procedure()</code></a>, <a class="link" href="libgimp-gimp.html#gimp-install-temp-proc" title="gimp_install_temp_proc ()"><code class="function">gimp_install_temp_proc()</code></a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-extension-process"></a><h3>gimp_extension_process ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_extension_process (<em class="parameter"><code><span class="type">guint</span> timeout</code></em>);</pre>
<p>Processes one message sent by GIMP and returns.</p>
<p>Call this function in an endless loop after calling
<a class="link" href="libgimp-gimp.html#gimp-extension-ack" title="gimp_extension_ack ()"><code class="function">gimp_extension_ack()</code></a> to process requests for running temporary
procedures.</p>
<p>See <a class="link" href="libgimp-gimp.html#gimp-extension-enable" title="gimp_extension_enable ()"><code class="function">gimp_extension_enable()</code></a> for an asynchronous way of doing the
same if running an endless loop is not an option.</p>
<p>See also: <a class="link" href="libgimp-gimp.html#gimp-install-procedure" title="gimp_install_procedure ()"><code class="function">gimp_install_procedure()</code></a>, <a class="link" href="libgimp-gimp.html#gimp-install-temp-proc" title="gimp_install_temp_proc ()"><code class="function">gimp_install_temp_proc()</code></a></p>
<div class="refsect3">
<a name="gimp-extension-process.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>timeout</p></td>
<td class="parameter_description"><p>The timeout (in ms) to use for the <code class="function">select()</code> call.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-attach-parasite"></a><h3>gimp_attach_parasite ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_attach_parasite (<em class="parameter"><code>const <a href="../html/libgimpbase-GimpParasite.html#GimpParasite"><span class="type">GimpParasite</span></a> *parasite</code></em>);</pre>
<p>Add a global parasite.</p>
<p>This procedure attaches a global parasite. It has no return values.</p>
<div class="refsect3">
<a name="gimp-attach-parasite.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>parasite</p></td>
<td class="parameter_description"><p>The parasite to attach.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-attach-parasite.returns"></a><h4>Returns</h4>
<p> TRUE on success.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-8.html#api-index-2.8">2.8</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-detach-parasite"></a><h3>gimp_detach_parasite ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_detach_parasite (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
<p>Removes a global parasite.</p>
<p>This procedure detaches a global parasite from. It has no return
values.</p>
<div class="refsect3">
<a name="gimp-detach-parasite.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>The name of the parasite to detach.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-detach-parasite.returns"></a><h4>Returns</h4>
<p> TRUE on success.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-8.html#api-index-2.8">2.8</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-parasite-find"></a><h3>gimp_parasite_find ()</h3>
<pre class="programlisting"><a href="../html/libgimpbase-GimpParasite.html#GimpParasite"><span class="returnvalue">GimpParasite</span></a> *
gimp_parasite_find (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
<div class="warning">
<p><code class="literal">gimp_parasite_find</code> is deprecated and should not be used in newly-written code.</p>
<p>Use <a class="link" href="libgimp-gimp.html#gimp-get-parasite" title="gimp_get_parasite ()"><code class="function">gimp_get_parasite()</code></a> instead.</p>
</div>
<div class="refsect3">
<a name="gimp-parasite-find.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>The name of the parasite to find.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-parasite-find.returns"></a><h4>Returns</h4>
<p> The found parasite.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-parasite-list"></a><h3>gimp_parasite_list ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_parasite_list (<em class="parameter"><code><span class="type">gint</span> *num_parasites</code></em>,
<em class="parameter"><code><span class="type">gchar</span> ***parasites</code></em>);</pre>
<div class="warning">
<p><code class="literal">gimp_parasite_list</code> is deprecated and should not be used in newly-written code.</p>
<p>Use <a class="link" href="libgimp-gimp.html#gimp-get-parasite-list" title="gimp_get_parasite_list ()"><code class="function">gimp_get_parasite_list()</code></a> instead.</p>
</div>
<div class="refsect3">
<a name="gimp-parasite-list.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>num_parasites</p></td>
<td class="parameter_description"><p>The number of attached parasites.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>parasites</p></td>
<td class="parameter_description"><p>The names of currently attached parasites.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-parasite-list.returns"></a><h4>Returns</h4>
<p> TRUE on success.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-get-parasite"></a><h3>gimp_get_parasite ()</h3>
<pre class="programlisting"><a href="../html/libgimpbase-GimpParasite.html#GimpParasite"><span class="returnvalue">GimpParasite</span></a> *
gimp_get_parasite (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
<p>Look up a global parasite.</p>
<p>Finds and returns the global parasite that was previously attached.</p>
<div class="refsect3">
<a name="gimp-get-parasite.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>The name of the parasite to find.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-get-parasite.returns"></a><h4>Returns</h4>
<p> The found parasite.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-8.html#api-index-2.8">2.8</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-get-parasite-list"></a><h3>gimp_get_parasite_list ()</h3>
<pre class="programlisting"><span class="returnvalue">gchar</span> **
gimp_get_parasite_list (<em class="parameter"><code><span class="type">gint</span> *num_parasites</code></em>);</pre>
<p>List all parasites.</p>
<p>Returns a list of all currently attached global parasites.</p>
<div class="refsect3">
<a name="gimp-get-parasite-list.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>num_parasites</p></td>
<td class="parameter_description"><p>The number of attached parasites.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-get-parasite-list.returns"></a><h4>Returns</h4>
<p> The names of currently attached parasites. The returned
value must be freed with <code class="function">g_strfreev()</code>.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-8.html#api-index-2.8">2.8</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-parasite-attach"></a><h3>gimp_parasite_attach ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_parasite_attach (<em class="parameter"><code>const <a href="../html/libgimpbase-GimpParasite.html#GimpParasite"><span class="type">GimpParasite</span></a> *parasite</code></em>);</pre>
<div class="warning">
<p><code class="literal">gimp_parasite_attach</code> is deprecated and should not be used in newly-written code.</p>
<p>Use <a class="link" href="libgimp-gimp.html#gimp-attach-parasite" title="gimp_attach_parasite ()"><code class="function">gimp_attach_parasite()</code></a> instead.</p>
</div>
<div class="refsect3">
<a name="gimp-parasite-attach.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>parasite</p></td>
<td class="parameter_description"><p>The parasite to attach.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-parasite-attach.returns"></a><h4>Returns</h4>
<p> TRUE on success.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-parasite-detach"></a><h3>gimp_parasite_detach ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_parasite_detach (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
<div class="warning">
<p><code class="literal">gimp_parasite_detach</code> is deprecated and should not be used in newly-written code.</p>
<p>Use <a class="link" href="libgimp-gimp.html#gimp-detach-parasite" title="gimp_detach_parasite ()"><code class="function">gimp_detach_parasite()</code></a> instead.</p>
</div>
<div class="refsect3">
<a name="gimp-parasite-detach.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>The name of the parasite to detach.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-parasite-detach.returns"></a><h4>Returns</h4>
<p> TRUE on success.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gimp-attach-new-parasite"></a><h3>gimp_attach_new_parasite ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_attach_new_parasite (<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>,
<em class="parameter"><code><span class="type">gint</span> flags</code></em>,
<em class="parameter"><code><span class="type">gint</span> size</code></em>,
<em class="parameter"><code><span class="type">gconstpointer</span> data</code></em>);</pre>
<div class="warning">
<p><code class="literal">gimp_attach_new_parasite</code> is deprecated and should not be used in newly-written code.</p>
<p>Use <a class="link" href="libgimp-gimp.html#gimp-attach-parasite" title="gimp_attach_parasite ()"><code class="function">gimp_attach_parasite()</code></a> instead.</p>
</div>
<p>Convenience function that creates a parasite and attaches it
to GIMP.</p>
<div class="refsect3">
<a name="gimp-attach-new-parasite.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>the name of the <a href="../html/libgimpbase-GimpParasite.html#GimpParasite"><span class="type">GimpParasite</span></a> to create and attach.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>the flags set on the <a href="../html/libgimpbase-GimpParasite.html#GimpParasite"><span class="type">GimpParasite</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>size</p></td>
<td class="parameter_description"><p>the size of the parasite data in bytes.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>data</p></td>
<td class="parameter_description"><p>a pointer to the data attached with the <a href="../html/libgimpbase-GimpParasite.html#GimpParasite"><span class="type">GimpParasite</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-attach-new-parasite.returns"></a><h4>Returns</h4>
<p> TRUE on successful creation and attachment of
the new parasite.</p>
<p>See Also: <a class="link" href="libgimp-gimp.html#gimp-attach-parasite" title="gimp_attach_parasite ()"><code class="function">gimp_attach_parasite()</code></a></p>
</div>
</div>
</div>
<div class="refsect1">
<a name="libgimp-gimp.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="gimp-get-data"></a><h3>gimp_get_data</h3>
<pre class="programlisting">#define gimp_get_data gimp_procedural_db_get_data
</pre>
</div>
<hr>
<div class="refsect2">
<a name="gimp-get-data-size"></a><h3>gimp_get_data_size</h3>
<pre class="programlisting">#define gimp_get_data_size gimp_procedural_db_get_data_size
</pre>
</div>
<hr>
<div class="refsect2">
<a name="gimp-set-data"></a><h3>gimp_set_data</h3>
<pre class="programlisting">#define gimp_set_data gimp_procedural_db_set_data
</pre>
</div>
<hr>
<div class="refsect2">
<a name="GimpPlugInInfo"></a><h3>GimpPlugInInfo</h3>
<pre class="programlisting">typedef struct {
GimpInitProc init_proc;
GimpQuitProc quit_proc;
GimpQueryProc query_proc;
GimpRunProc run_proc;
} GimpPlugInInfo;
</pre>
<div class="refsect3">
<a name="GimpPlugInInfo.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a class="link" href="libgimp-gimp.html#GimpInitProc" title="GimpInitProc ()"><span class="type">GimpInitProc</span></a> <em class="structfield"><code><a name="GimpPlugInInfo.init-proc"></a>init_proc</code></em>;</p></td>
<td class="struct_member_description"><p>called when the gimp application initially starts up</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="libgimp-gimp.html#GimpQuitProc" title="GimpQuitProc ()"><span class="type">GimpQuitProc</span></a> <em class="structfield"><code><a name="GimpPlugInInfo.quit-proc"></a>quit_proc</code></em>;</p></td>
<td class="struct_member_description"><p>called when the gimp application exits</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="libgimp-gimp.html#GimpQueryProc" title="GimpQueryProc ()"><span class="type">GimpQueryProc</span></a> <em class="structfield"><code><a name="GimpPlugInInfo.query-proc"></a>query_proc</code></em>;</p></td>
<td class="struct_member_description"><p>called by gimp so that the plug-in can inform the
gimp of what it does. (ie. installing a procedure database
procedure).</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="libgimp-gimp.html#GimpRunProc" title="GimpRunProc ()"><span class="type">GimpRunProc</span></a> <em class="structfield"><code><a name="GimpPlugInInfo.run-proc"></a>run_proc</code></em>;</p></td>
<td class="struct_member_description"><p>called to run a procedure the plug-in installed in the
procedure database.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GimpParamDef"></a><h3>GimpParamDef</h3>
<pre class="programlisting">typedef struct {
GimpPDBArgType type;
gchar *name;
gchar *description;
} GimpParamDef;
</pre>
</div>
<hr>
<div class="refsect2">
<a name="GimpParamRegion"></a><h3>GimpParamRegion</h3>
<pre class="programlisting">typedef struct {
gint32 x;
gint32 y;
gint32 width;
gint32 height;
} GimpParamRegion;
</pre>
</div>
<hr>
<div class="refsect2">
<a name="GimpParamData"></a><h3>GimpParamData</h3>
</div>
<hr>
<div class="refsect2">
<a name="GimpParam"></a><h3>GimpParam</h3>
<pre class="programlisting">typedef struct {
GimpPDBArgType type;
GimpParamData data;
} GimpParam;
</pre>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.33.1</div>
</body>
</html>