Files
gimp/devel-docs/libgimp/html/libgimp-gimptile.html
2010-08-11 01:23:08 -04:00

242 lines
9.9 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>gimptile</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
<link rel="start" href="index.html" title="GIMP Library Reference Manual">
<link rel="up" href="libgimp-image.html" title="Manupulating Images and their Properties">
<link rel="prev" href="libgimp-gimptexttool.html" title="gimptexttool">
<link rel="next" href="libgimp-gimptools.html" title="gimptools">
<meta name="generator" content="GTK-Doc V1.8 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
<link rel="part" href="libgimp.html" title="Part&#160;I.&#160;GIMP Library">
<link rel="chapter" href="libgimp-general.html" title="Functions not Related to Specific Images">
<link rel="chapter" href="libgimp-image.html" title="Manupulating Images and their Properties">
<link rel="chapter" href="libgimp-data.html" title="Data Objects">
<link rel="chapter" href="libgimp-selectors.html" title="Controlling the Core's Selection Dialogs">
<link rel="part" href="libgimpui.html" title="Part&#160;II.&#160;GIMP User Interface Library">
<link rel="chapter" href="libgimpui-hierarchy.html" title="Object Hierarchy">
<link rel="index" href="libgimp-index.html" title="Index">
<link rel="index" href="libgimp-index-new-in-2-2.html" title="Index of new symbols in GIMP 2.2">
<link rel="index" href="libgimp-index-new-in-2-4.html" title="Index of new symbols in GIMP 2.4">
<link rel="index" href="libgimp-index-deprecated.html" title="Index of deprecated symbols">
</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="2">
<tr valign="middle">
<td><a accesskey="p" href="libgimp-gimptexttool.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="libgimp-image.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GIMP Library Reference Manual</th>
<td><a accesskey="n" href="libgimp-gimptools.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2612984" class="shortcut">Top</a>
&#160;|&#160;
<a href="#id2679251" class="shortcut">Description</a></nobr></td></tr>
</table>
<div class="refentry" lang="en">
<a name="libgimp-gimptile"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2>
<a name="id2612984"></a><span class="refentrytitle">gimptile</span>
</h2>
<p>gimptile &#8212; Functions for working with tiles.</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<pre class="synopsis">
<a class="link" href="libgimp-gimptile.html#GimpTile">GimpTile</a>;
void <a class="link" href="libgimp-gimptile.html#gimp-tile-ref">gimp_tile_ref</a> (<a class="link" href="libgimp-gimptile.html#GimpTile">GimpTile</a> *tile);
void <a class="link" href="libgimp-gimptile.html#gimp-tile-ref-zero">gimp_tile_ref_zero</a> (<a class="link" href="libgimp-gimptile.html#GimpTile">GimpTile</a> *tile);
void <a class="link" href="libgimp-gimptile.html#gimp-tile-unref">gimp_tile_unref</a> (<a class="link" href="libgimp-gimptile.html#GimpTile">GimpTile</a> *tile,
<a
href="../glib/glib-Basic-Types.html#gboolean"
>gboolean</a> dirty);
void <a class="link" href="libgimp-gimptile.html#gimp-tile-flush">gimp_tile_flush</a> (<a class="link" href="libgimp-gimptile.html#GimpTile">GimpTile</a> *tile);
void <a class="link" href="libgimp-gimptile.html#gimp-tile-cache-size">gimp_tile_cache_size</a> (<a
href="../glib/glib-Basic-Types.html#gulong"
>gulong</a> kilobytes);
void <a class="link" href="libgimp-gimptile.html#gimp-tile-cache-ntiles">gimp_tile_cache_ntiles</a> (<a
href="../glib/glib-Basic-Types.html#gulong"
>gulong</a> ntiles);
</pre>
</div>
<div class="refsect1" lang="en">
<a name="id2679251"></a><h2>Description</h2>
<p>
Functions for working with tiles.
</p>
</div>
<div class="refsect1" lang="en">
<a name="id2679266"></a><h2>Details</h2>
<div class="refsect2" lang="en">
<a name="id2679277"></a><h3>
<a name="GimpTile"></a>GimpTile</h3>
<a class="indexterm" name="id2679289"></a><pre class="programlisting">typedef struct {
guint ewidth; /* the effective width of the tile */
guint eheight; /* the effective height of the tile */
guint bpp; /* the bytes per pixel (1, 2, 3 or 4 ) */
guint tile_num; /* the number of this tile within the drawable */
guint16 ref_count; /* reference count for the tile */
guint dirty : 1; /* is the tile dirty? has it been modified? */
guint shadow: 1; /* is this a shadow tile */
guchar *data; /* the pixel data for the tile */
GimpDrawable *drawable; /* the drawable this tile came from */
} GimpTile;
</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2679314"></a><h3>
<a name="gimp-tile-ref"></a>gimp_tile_ref ()</h3>
<a class="indexterm" name="id2679326"></a><pre class="programlisting">void gimp_tile_ref (<a class="link" href="libgimp-gimptile.html#GimpTile">GimpTile</a> *tile);</pre>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>tile</code></em>&#160;:</span></p></td>
<td>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2686691"></a><h3>
<a name="gimp-tile-ref-zero"></a>gimp_tile_ref_zero ()</h3>
<a class="indexterm" name="id2686702"></a><pre class="programlisting">void gimp_tile_ref_zero (<a class="link" href="libgimp-gimptile.html#GimpTile">GimpTile</a> *tile);</pre>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>tile</code></em>&#160;:</span></p></td>
<td>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2686747"></a><h3>
<a name="gimp-tile-unref"></a>gimp_tile_unref ()</h3>
<a class="indexterm" name="id2686758"></a><pre class="programlisting">void gimp_tile_unref (<a class="link" href="libgimp-gimptile.html#GimpTile">GimpTile</a> *tile,
<a
href="../glib/glib-Basic-Types.html#gboolean"
>gboolean</a> dirty);</pre>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>tile</code></em>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>dirty</code></em>&#160;:</span></p></td>
<td>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2686825"></a><h3>
<a name="gimp-tile-flush"></a>gimp_tile_flush ()</h3>
<a class="indexterm" name="id2686836"></a><pre class="programlisting">void gimp_tile_flush (<a class="link" href="libgimp-gimptile.html#GimpTile">GimpTile</a> *tile);</pre>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>tile</code></em>&#160;:</span></p></td>
<td>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2686882"></a><h3>
<a name="gimp-tile-cache-size"></a>gimp_tile_cache_size ()</h3>
<a class="indexterm" name="id2686893"></a><pre class="programlisting">void gimp_tile_cache_size (<a
href="../glib/glib-Basic-Types.html#gulong"
>gulong</a> kilobytes);</pre>
<p>
Sets the size of the tile cache on the plug-in side. The tile cache
is used to reduce the number of tiles exchanged between the GIMP core
and the plug-in. See also <a class="link" href="libgimp-gimptile.html#gimp-tile-cache-ntiles"><code class="function">gimp_tile_cache_ntiles()</code></a>.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>kilobytes</code></em>&#160;:</span></p></td>
<td> new cache size in kilobytes
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2685675"></a><h3>
<a name="gimp-tile-cache-ntiles"></a>gimp_tile_cache_ntiles ()</h3>
<a class="indexterm" name="id2685686"></a><pre class="programlisting">void gimp_tile_cache_ntiles (<a
href="../glib/glib-Basic-Types.html#gulong"
>gulong</a> ntiles);</pre>
<p>
Sets the size of the tile cache on the plug-in side. This function
is similar to <a class="link" href="libgimp-gimptile.html#gimp-tile-cache-size"><code class="function">gimp_tile_cache_size()</code></a> but allows to specify the
number of tiles directly.
</p>
<p>
If your plug-in access pixels tile-by-tile, it doesn't need a tile
cache at all. If however the plug-in accesses drawable pixel data
row-by-row, it should set the tile cache large enough to hold the
number of tiles per row. Double this size if your plug-in uses
shadow tiles.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>ntiles</code></em>&#160;:</span></p></td>
<td> number of tiles that should fit into the cache
</td>
</tr></tbody>
</table></div>
</div>
</div>
</div>
</body>
</html>