Sophie

Sophie

distrib > Fedora > 14 > i386 > by-pkgid > 7a022198a50a2e9f6bdbca88b73d1ff0 > files > 49

gutenprint-devel-5.2.6-1.fc14.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>libgutenprint API Reference: include/gutenprint/dither.h File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>include/gutenprint/dither.h File Reference</h1>Dither functions. <a href="#_details">More...</a>
<p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstp__dither__matrix__short.html">stp_dither_matrix_short</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstp__dither__matrix__normal.html">stp_dither_matrix_normal</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstp__dither__matrix__generic.html">stp_dither_matrix_generic</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdither__matrix__impl.html">dither_matrix_impl</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstp__dotsize.html">stp_dotsize</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstp__shade.html">stp_shade</a></td></tr>

<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#9da4fbd724d498250c7129ccbb88c9a3">STP_ECOLOR_K</a>&nbsp;&nbsp;&nbsp;0</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#fb855574a9dd1ce3c0ac8e353917cf40">STP_ECOLOR_C</a>&nbsp;&nbsp;&nbsp;1</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#42c70bd6031d27d8ce2ab23133f7ed71">STP_ECOLOR_M</a>&nbsp;&nbsp;&nbsp;2</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#ac7bfac809059b8c99338dfa9347cf85">STP_ECOLOR_Y</a>&nbsp;&nbsp;&nbsp;3</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#bda31f8e7a9e473057644a5fe4a2339b">STP_NCOLORS</a>&nbsp;&nbsp;&nbsp;(4)</td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <br>
<a class="el" href="structstp__dither__matrix__short.html">stp_dither_matrix_short</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#9a2c54a4730e2c9bb25cf95f6cd3e597">stp_dither_matrix_short_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <br>
<a class="el" href="structstp__dither__matrix__normal.html">stp_dither_matrix_normal</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#febf0484e151cf3cce4ef0b9911d0022">stp_dither_matrix_normal_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <br>
<a class="el" href="structstp__dither__matrix__generic.html">stp_dither_matrix_generic</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#9f5f63d4f792df1d7becccf3fb5c8fdd">stp_dither_matrix_generic_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="structdither__matrix__impl.html">dither_matrix_impl</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#f823fed10cb9591c0e659033ec49f55f">stp_dither_matrix_impl_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="structstp__dotsize.html">stp_dotsize</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#7a74b9371fd47b48d961d2316e2126e4">stp_dotsize_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="structstp__shade.html">stp_shade</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#5baefb325bf92b7ca10c2d057c04b835">stp_shade_t</a></td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#36691189c1f859d82675f32f5046e674">stp_dither_matrix_iterated_init</a> (<a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *mat, size_t size, size_t exponent, const unsigned *array)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#df8bb5a54d552846dcf4d1534d612b65">stp_dither_matrix_shear</a> (<a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *mat, int x_shear, int y_shear)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#2c42ec7156263c024ea6f51ab3b17530">stp_dither_matrix_init</a> (<a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *mat, int x_size, int y_size, const unsigned int *array, int transpose, int prescaled)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#588103d2a828a6c5f51577a917b09cdf">stp_dither_matrix_init_short</a> (<a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *mat, int x_size, int y_size, const unsigned short *array, int transpose, int prescaled)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#ad322d923e2d9c3141cc50863d627b25">stp_dither_matrix_validate_array</a> (const <a class="el" href="group__array.html#g26a474575a39c1c36ad520b95aa813b0">stp_array_t</a> *array)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#53b7ba7fd141db6ef43c68a6f500bda2">stp_dither_matrix_init_from_dither_array</a> (<a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *mat, const <a class="el" href="group__array.html#g26a474575a39c1c36ad520b95aa813b0">stp_array_t</a> *array, int transpose)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#49ff7bd6b10cd34f9164b4414adbb87c">stp_dither_matrix_destroy</a> (<a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *mat)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#d0dfe2800ed318431a0a54c1ed7d383b">stp_dither_matrix_clone</a> (const <a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *src, <a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *dest, int x_offset, int y_offset)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#3ea3c72ff26afef246873edc0bc542d3">stp_dither_matrix_copy</a> (const <a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *src, <a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *dest)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#a62e8e672a125150074ea9bddb474423">stp_dither_matrix_scale_exponentially</a> (<a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *mat, double exponent)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#a6ca0a88b0bef517cc1909fb7074e8ac">stp_dither_matrix_set_row</a> (<a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *mat, int y)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__array.html#g26a474575a39c1c36ad520b95aa813b0">stp_array_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#c523d1ba539398308a7ea83f4188d6ae">stp_find_standard_dither_array</a> (int x_aspect, int y_aspect)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__vars.html#g40c1035f88ac38d77eddb65195b28595">stp_parameter_list_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#27fa3e870e438b0c399472a908555630">stp_dither_list_parameters</a> (const <a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#f1c4669d2bed56e2e1403a7d0f36f6ba">stp_dither_describe_parameter</a> (const <a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, const char *name, <a class="el" href="structstp__parameter__t.html">stp_parameter_t</a> *description)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#9835738585d6a9053eaeacdca25d0fe6">stp_dither_init</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, <a class="el" href="structstp__image.html">stp_image_t</a> *image, int out_width, int xdpi, int ydpi)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#57aecb702251a2e18848b02109521aed">stp_dither_set_iterated_matrix</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, size_t edge, size_t iterations, const unsigned *data, int prescaled, int x_shear, int y_shear)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#a973f651768626a6eb7ab9ad4ce09b2c">stp_dither_set_matrix</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, const <a class="el" href="structstp__dither__matrix__generic.html">stp_dither_matrix_generic_t</a> *mat, int transpose, int x_shear, int y_shear)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#3155913bdc63c0545786fc427ca2396a">stp_dither_set_matrix_from_dither_array</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, const <a class="el" href="group__array.html#g26a474575a39c1c36ad520b95aa813b0">stp_array_t</a> *array, int transpose)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#6f4efd170562a43139f7d6a4b41ecaf3">stp_dither_set_transition</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, double)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#560bcf46dfa233a01bdf6042e4680f54">stp_dither_set_randomizer</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, int color, double)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#b47439fc32e7f669f8cd6c41acdcf398">stp_dither_set_ink_spread</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, int spread)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#c6a4aa7bda3af1ae03d87f243311ebba">stp_dither_set_adaptive_limit</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, double limit)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#fe180672fad52d306e737a333ea113fb">stp_dither_get_first_position</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, int color, int subchan)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#ddc996112f61432ff66a10eb502d9a4d">stp_dither_get_last_position</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, int color, int subchan)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#4dd13ea23fe601571d864eabae4b0c40">stp_dither_set_inks_simple</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, int color, int nlevels, const double *levels, double density, double darkness)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#f5822743e380d0d51a397dcb3eb6247c">stp_dither_set_inks_full</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, int color, int nshades, const <a class="el" href="structstp__shade.html">stp_shade_t</a> *shades, double density, double darkness)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#5b8786ffa17dcc1604521b1d1cc5a3a5">stp_dither_set_inks</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, int color, double density, double darkness, int nshades, const double *svalues, int ndotsizes, const double *dvalues)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#d70196f1a4510c43f3651bf1450be5fa">stp_dither_add_channel</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, unsigned char *data, unsigned channel, unsigned subchannel)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#8866521ed5c139e2048e5548cc4fb43f">stp_dither_get_channel</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, unsigned channel, unsigned subchannel)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#0a470a9c9daef26e90bdb890479a7f87">stp_dither</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, int row, int duplicate_line, int zero_mask, const unsigned char *mask)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dither_8h.html#70a6b29366005ba76ee77e9f1aaae105">stp_dither_internal</a> (<a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *v, int row, const unsigned short *input, int duplicate_line, int zero_mask, const unsigned char *mask)</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Dither functions. 
<p>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="fb855574a9dd1ce3c0ac8e353917cf40"></a><!-- doxytag: member="dither.h::STP_ECOLOR_C" ref="fb855574a9dd1ce3c0ac8e353917cf40" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define STP_ECOLOR_C&nbsp;&nbsp;&nbsp;1          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="9da4fbd724d498250c7129ccbb88c9a3"></a><!-- doxytag: member="dither.h::STP_ECOLOR_K" ref="9da4fbd724d498250c7129ccbb88c9a3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define STP_ECOLOR_K&nbsp;&nbsp;&nbsp;0          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="42c70bd6031d27d8ce2ab23133f7ed71"></a><!-- doxytag: member="dither.h::STP_ECOLOR_M" ref="42c70bd6031d27d8ce2ab23133f7ed71" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define STP_ECOLOR_M&nbsp;&nbsp;&nbsp;2          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="ac7bfac809059b8c99338dfa9347cf85"></a><!-- doxytag: member="dither.h::STP_ECOLOR_Y" ref="ac7bfac809059b8c99338dfa9347cf85" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define STP_ECOLOR_Y&nbsp;&nbsp;&nbsp;3          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="bda31f8e7a9e473057644a5fe4a2339b"></a><!-- doxytag: member="dither.h::STP_NCOLORS" ref="bda31f8e7a9e473057644a5fe4a2339b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define STP_NCOLORS&nbsp;&nbsp;&nbsp;(4)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="9f5f63d4f792df1d7becccf3fb5c8fdd"></a><!-- doxytag: member="dither.h::stp_dither_matrix_generic_t" ref="9f5f63d4f792df1d7becccf3fb5c8fdd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structstp__dither__matrix__generic.html">stp_dither_matrix_generic</a>  <a class="el" href="structstp__dither__matrix__generic.html">stp_dither_matrix_generic_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="f823fed10cb9591c0e659033ec49f55f"></a><!-- doxytag: member="dither.h::stp_dither_matrix_impl_t" ref="f823fed10cb9591c0e659033ec49f55f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structdither__matrix__impl.html">dither_matrix_impl</a>  <a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="febf0484e151cf3cce4ef0b9911d0022"></a><!-- doxytag: member="dither.h::stp_dither_matrix_normal_t" ref="febf0484e151cf3cce4ef0b9911d0022" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structstp__dither__matrix__normal.html">stp_dither_matrix_normal</a>  <a class="el" href="structstp__dither__matrix__normal.html">stp_dither_matrix_normal_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="9a2c54a4730e2c9bb25cf95f6cd3e597"></a><!-- doxytag: member="dither.h::stp_dither_matrix_short_t" ref="9a2c54a4730e2c9bb25cf95f6cd3e597" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structstp__dither__matrix__short.html">stp_dither_matrix_short</a>  <a class="el" href="structstp__dither__matrix__short.html">stp_dither_matrix_short_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="7a74b9371fd47b48d961d2316e2126e4"></a><!-- doxytag: member="dither.h::stp_dotsize_t" ref="7a74b9371fd47b48d961d2316e2126e4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structstp__dotsize.html">stp_dotsize</a>  <a class="el" href="structstp__dotsize.html">stp_dotsize_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="5baefb325bf92b7ca10c2d057c04b835"></a><!-- doxytag: member="dither.h::stp_shade_t" ref="5baefb325bf92b7ca10c2d057c04b835" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structstp__shade.html">stp_shade</a>  <a class="el" href="structstp__shade.html">stp_shade_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="0a470a9c9daef26e90bdb890479a7f87"></a><!-- doxytag: member="dither.h::stp_dither" ref="0a470a9c9daef26e90bdb890479a7f87" args="(stp_vars_t *v, int row, int duplicate_line, int zero_mask, const unsigned char *mask)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>duplicate_line</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>zero_mask</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned char *&nbsp;</td>
          <td class="paramname"> <em>mask</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="d70196f1a4510c43f3651bf1450be5fa"></a><!-- doxytag: member="dither.h::stp_dither_add_channel" ref="d70196f1a4510c43f3651bf1450be5fa" args="(stp_vars_t *v, unsigned char *data, unsigned channel, unsigned subchannel)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_add_channel           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned char *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>channel</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>subchannel</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="f1c4669d2bed56e2e1403a7d0f36f6ba"></a><!-- doxytag: member="dither.h::stp_dither_describe_parameter" ref="f1c4669d2bed56e2e1403a7d0f36f6ba" args="(const stp_vars_t *v, const char *name, stp_parameter_t *description)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_describe_parameter           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structstp__parameter__t.html">stp_parameter_t</a> *&nbsp;</td>
          <td class="paramname"> <em>description</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="8866521ed5c139e2048e5548cc4fb43f"></a><!-- doxytag: member="dither.h::stp_dither_get_channel" ref="8866521ed5c139e2048e5548cc4fb43f" args="(stp_vars_t *v, unsigned channel, unsigned subchannel)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned char* stp_dither_get_channel           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>channel</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>subchannel</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="fe180672fad52d306e737a333ea113fb"></a><!-- doxytag: member="dither.h::stp_dither_get_first_position" ref="fe180672fad52d306e737a333ea113fb" args="(stp_vars_t *v, int color, int subchan)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int stp_dither_get_first_position           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>color</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>subchan</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="ddc996112f61432ff66a10eb502d9a4d"></a><!-- doxytag: member="dither.h::stp_dither_get_last_position" ref="ddc996112f61432ff66a10eb502d9a4d" args="(stp_vars_t *v, int color, int subchan)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int stp_dither_get_last_position           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>color</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>subchan</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="9835738585d6a9053eaeacdca25d0fe6"></a><!-- doxytag: member="dither.h::stp_dither_init" ref="9835738585d6a9053eaeacdca25d0fe6" args="(stp_vars_t *v, stp_image_t *image, int out_width, int xdpi, int ydpi)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_init           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structstp__image.html">stp_image_t</a> *&nbsp;</td>
          <td class="paramname"> <em>image</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>out_width</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>xdpi</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>ydpi</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="70a6b29366005ba76ee77e9f1aaae105"></a><!-- doxytag: member="dither.h::stp_dither_internal" ref="70a6b29366005ba76ee77e9f1aaae105" args="(stp_vars_t *v, int row, const unsigned short *input, int duplicate_line, int zero_mask, const unsigned char *mask)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_internal           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned short *&nbsp;</td>
          <td class="paramname"> <em>input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>duplicate_line</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>zero_mask</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned char *&nbsp;</td>
          <td class="paramname"> <em>mask</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="27fa3e870e438b0c399472a908555630"></a><!-- doxytag: member="dither.h::stp_dither_list_parameters" ref="27fa3e870e438b0c399472a908555630" args="(const stp_vars_t *v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__vars.html#g40c1035f88ac38d77eddb65195b28595">stp_parameter_list_t</a> stp_dither_list_parameters           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="d0dfe2800ed318431a0a54c1ed7d383b"></a><!-- doxytag: member="dither.h::stp_dither_matrix_clone" ref="d0dfe2800ed318431a0a54c1ed7d383b" args="(const stp_dither_matrix_impl_t *src, stp_dither_matrix_impl_t *dest, int x_offset, int y_offset)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_clone           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>x_offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>y_offset</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="3ea3c72ff26afef246873edc0bc542d3"></a><!-- doxytag: member="dither.h::stp_dither_matrix_copy" ref="3ea3c72ff26afef246873edc0bc542d3" args="(const stp_dither_matrix_impl_t *src, stp_dither_matrix_impl_t *dest)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_copy           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dest</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="49ff7bd6b10cd34f9164b4414adbb87c"></a><!-- doxytag: member="dither.h::stp_dither_matrix_destroy" ref="49ff7bd6b10cd34f9164b4414adbb87c" args="(stp_dither_matrix_impl_t *mat)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_destroy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="2c42ec7156263c024ea6f51ab3b17530"></a><!-- doxytag: member="dither.h::stp_dither_matrix_init" ref="2c42ec7156263c024ea6f51ab3b17530" args="(stp_dither_matrix_impl_t *mat, int x_size, int y_size, const unsigned int *array, int transpose, int prescaled)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_init           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>x_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>y_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned int *&nbsp;</td>
          <td class="paramname"> <em>array</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>transpose</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>prescaled</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="53b7ba7fd141db6ef43c68a6f500bda2"></a><!-- doxytag: member="dither.h::stp_dither_matrix_init_from_dither_array" ref="53b7ba7fd141db6ef43c68a6f500bda2" args="(stp_dither_matrix_impl_t *mat, const stp_array_t *array, int transpose)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_init_from_dither_array           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__array.html#g26a474575a39c1c36ad520b95aa813b0">stp_array_t</a> *&nbsp;</td>
          <td class="paramname"> <em>array</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>transpose</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="588103d2a828a6c5f51577a917b09cdf"></a><!-- doxytag: member="dither.h::stp_dither_matrix_init_short" ref="588103d2a828a6c5f51577a917b09cdf" args="(stp_dither_matrix_impl_t *mat, int x_size, int y_size, const unsigned short *array, int transpose, int prescaled)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_init_short           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>x_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>y_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned short *&nbsp;</td>
          <td class="paramname"> <em>array</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>transpose</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>prescaled</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="36691189c1f859d82675f32f5046e674"></a><!-- doxytag: member="dither.h::stp_dither_matrix_iterated_init" ref="36691189c1f859d82675f32f5046e674" args="(stp_dither_matrix_impl_t *mat, size_t size, size_t exponent, const unsigned *array)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_iterated_init           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>exponent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned *&nbsp;</td>
          <td class="paramname"> <em>array</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="a62e8e672a125150074ea9bddb474423"></a><!-- doxytag: member="dither.h::stp_dither_matrix_scale_exponentially" ref="a62e8e672a125150074ea9bddb474423" args="(stp_dither_matrix_impl_t *mat, double exponent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_scale_exponentially           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>exponent</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="a6ca0a88b0bef517cc1909fb7074e8ac"></a><!-- doxytag: member="dither.h::stp_dither_matrix_set_row" ref="a6ca0a88b0bef517cc1909fb7074e8ac" args="(stp_dither_matrix_impl_t *mat, int y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_set_row           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="df8bb5a54d552846dcf4d1534d612b65"></a><!-- doxytag: member="dither.h::stp_dither_matrix_shear" ref="df8bb5a54d552846dcf4d1534d612b65" args="(stp_dither_matrix_impl_t *mat, int x_shear, int y_shear)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_matrix_shear           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdither__matrix__impl.html">stp_dither_matrix_impl_t</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>x_shear</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>y_shear</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="ad322d923e2d9c3141cc50863d627b25"></a><!-- doxytag: member="dither.h::stp_dither_matrix_validate_array" ref="ad322d923e2d9c3141cc50863d627b25" args="(const stp_array_t *array)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int stp_dither_matrix_validate_array           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__array.html#g26a474575a39c1c36ad520b95aa813b0">stp_array_t</a> *&nbsp;</td>
          <td class="paramname"> <em>array</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="c6a4aa7bda3af1ae03d87f243311ebba"></a><!-- doxytag: member="dither.h::stp_dither_set_adaptive_limit" ref="c6a4aa7bda3af1ae03d87f243311ebba" args="(stp_vars_t *v, double limit)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_adaptive_limit           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>limit</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="b47439fc32e7f669f8cd6c41acdcf398"></a><!-- doxytag: member="dither.h::stp_dither_set_ink_spread" ref="b47439fc32e7f669f8cd6c41acdcf398" args="(stp_vars_t *v, int spread)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_ink_spread           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>spread</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="5b8786ffa17dcc1604521b1d1cc5a3a5"></a><!-- doxytag: member="dither.h::stp_dither_set_inks" ref="5b8786ffa17dcc1604521b1d1cc5a3a5" args="(stp_vars_t *v, int color, double density, double darkness, int nshades, const double *svalues, int ndotsizes, const double *dvalues)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_inks           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>color</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>density</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>darkness</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>nshades</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double *&nbsp;</td>
          <td class="paramname"> <em>svalues</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>ndotsizes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double *&nbsp;</td>
          <td class="paramname"> <em>dvalues</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="f5822743e380d0d51a397dcb3eb6247c"></a><!-- doxytag: member="dither.h::stp_dither_set_inks_full" ref="f5822743e380d0d51a397dcb3eb6247c" args="(stp_vars_t *v, int color, int nshades, const stp_shade_t *shades, double density, double darkness)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_inks_full           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>color</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>nshades</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structstp__shade.html">stp_shade_t</a> *&nbsp;</td>
          <td class="paramname"> <em>shades</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>density</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>darkness</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="4dd13ea23fe601571d864eabae4b0c40"></a><!-- doxytag: member="dither.h::stp_dither_set_inks_simple" ref="4dd13ea23fe601571d864eabae4b0c40" args="(stp_vars_t *v, int color, int nlevels, const double *levels, double density, double darkness)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_inks_simple           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>color</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>nlevels</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double *&nbsp;</td>
          <td class="paramname"> <em>levels</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>density</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>darkness</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="57aecb702251a2e18848b02109521aed"></a><!-- doxytag: member="dither.h::stp_dither_set_iterated_matrix" ref="57aecb702251a2e18848b02109521aed" args="(stp_vars_t *v, size_t edge, size_t iterations, const unsigned *data, int prescaled, int x_shear, int y_shear)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_iterated_matrix           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>edge</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>iterations</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>prescaled</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>x_shear</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>y_shear</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="a973f651768626a6eb7ab9ad4ce09b2c"></a><!-- doxytag: member="dither.h::stp_dither_set_matrix" ref="a973f651768626a6eb7ab9ad4ce09b2c" args="(stp_vars_t *v, const stp_dither_matrix_generic_t *mat, int transpose, int x_shear, int y_shear)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_matrix           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structstp__dither__matrix__generic.html">stp_dither_matrix_generic_t</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>transpose</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>x_shear</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>y_shear</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="3155913bdc63c0545786fc427ca2396a"></a><!-- doxytag: member="dither.h::stp_dither_set_matrix_from_dither_array" ref="3155913bdc63c0545786fc427ca2396a" args="(stp_vars_t *v, const stp_array_t *array, int transpose)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_matrix_from_dither_array           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__array.html#g26a474575a39c1c36ad520b95aa813b0">stp_array_t</a> *&nbsp;</td>
          <td class="paramname"> <em>array</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>transpose</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="560bcf46dfa233a01bdf6042e4680f54"></a><!-- doxytag: member="dither.h::stp_dither_set_randomizer" ref="560bcf46dfa233a01bdf6042e4680f54" args="(stp_vars_t *v, int color, double)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_randomizer           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>color</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="6f4efd170562a43139f7d6a4b41ecaf3"></a><!-- doxytag: member="dither.h::stp_dither_set_transition" ref="6f4efd170562a43139f7d6a4b41ecaf3" args="(stp_vars_t *v, double)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void stp_dither_set_transition           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__vars.html#g2d49c94847d18d8b62a214995b14680f">stp_vars_t</a> *&nbsp;</td>
          <td class="paramname"> <em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="c523d1ba539398308a7ea83f4188d6ae"></a><!-- doxytag: member="dither.h::stp_find_standard_dither_array" ref="c523d1ba539398308a7ea83f4188d6ae" args="(int x_aspect, int y_aspect)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__array.html#g26a474575a39c1c36ad520b95aa813b0">stp_array_t</a>* stp_find_standard_dither_array           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>x_aspect</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>y_aspect</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Aug 10 20:32:51 2010 for libgutenprint API Reference by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>