1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <meta http-equiv="Content-Style-Type" content="text/css" /> 6 <link rel="stylesheet" href="../../css/manpage.css" type="text/css" /> 7<title>CompressHuffman</title> 8 </head> 9 <body> 10<h1><CODE><a href="../../nn/Overview.html">nn</a>::<a href="../../nn/cx/Overview.html">cx</a>::CompressHuffman</CODE> Function</h1> 11<h2>Syntax</h2> 12 <div class="section"> 13 <pre class="definition">#include <nn/cx.h> 14 15<a href="../../nn_types/u32.html">u32</a> CompressHuffman( 16 const <a href="../../nn_types/u8.html">u8</a> * srcp, 17 <a href="../../nn_types/u32.html">u32</a> size, 18 <a href="../../nn_types/u8.html">u8</a> * dstp, 19 <a href="../../nn_types/u8.html">u8</a> huffBitSize, 20 void * work 21); 22</pre> 23 </div> 24<h2>Parameters</h2> 25 <div class="section"> 26 <table class="arguments"> 27 <thead> 28 <tr> 29 <td width="15" /> 30<th>Name</th> 31<td>Description</td> 32 </tr> 33 </thead> 34 <tr> 35<td>in</td> 36<th><CODE>srcp</CODE></th> 37<td>Pointer to compression source data.</td> 38 </tr> 39 <tr> 40<td>in</td> 41<th><CODE>size</CODE></th> 42<td>Compression source data size.</td> 43 </tr> 44 <tr> 45<td>out</td> 46<th><CODE>dstp</CODE></th> 47<td>Pointer to compression target data (requires a buffer larger than the compression source data).</td> 48 </tr> 49 <tr> 50<td>in</td> 51<th><CODE>huffBitSize</CODE></th> 52<td>Number of encoded bits.</td> 53 </tr> 54 <tr> 55<td>in</td> 56<th><CODE>work</CODE></th> 57<td>Temporary buffer to use for compression (requires a region of <CODE><a href="../../nn/cx/HUFFMAN_COMPRESS_WORK_SIZE.html">nn::cx::HUFFMAN_COMPRESS_WORK_SIZE</a></CODE> bytes).</td> 58 </tr> </table> 59 </div> 60<h2>Return Values</h2> 61<div class="section">Returns the size of the compressed data. If the compressed data is larger than the original data, compression is terminated and <CODE>0</CODE> is returned. </div> 62<h2>Description</h2> 63 <div class="section"> 64<p>Carries out Huffman compression.</p><p> 65Argument values must adhere to the following restrictions: 66 <ul><li> 67<SPAN class="argument">huffBitSize</SPAN> must be 4 or 8. 68 </li><li> 69The address for <SPAN class="argument">work</SPAN> must be aligned to 4 bytes. 70 </li><li> 71The value of <SPAN class="argument">size</SPAN> must be larger than 4. 72 </li></ul></p></div> 73<h2>Revision History</h2> 74 <div class="section"> 75 <dl class="history"> 76 <dt>2011/04/06</dt> 77<dd>Added text about the restriction on argument values.<br /> 78 </dd> 79 <dt>2010/11/10</dt> 80<dd> Initial version.<br /> 81 </dd> 82 </dl> 83 </div> 84 <hr><p>CONFIDENTIAL</p></body> 85</html>