| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> |
| <title>Skia: SkPackBits Class Reference</title> |
| <link href="tabs.css" rel="stylesheet" type="text/css"/> |
| <link href="doxygen.css" rel="stylesheet" type="text/css"/> |
| </head> |
| <body> |
| <!-- Generated by Doxygen 1.6.1 --> |
| <div class="navigation" id="top"> |
| <div class="tabs"> |
| <ul> |
| <li><a href="main.html"><span>Main Page</span></a></li> |
| <li><a href="namespaces.html"><span>Namespaces</span></a></li> |
| <li class="current"><a href="annotated.html"><span>Classes</span></a></li> |
| <li><a href="files.html"><span>Files</span></a></li> |
| </ul> |
| </div> |
| <div class="tabs"> |
| <ul> |
| <li><a href="annotated.html"><span>Class List</span></a></li> |
| <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> |
| <li><a href="functions.html"><span>Class Members</span></a></li> |
| </ul> |
| </div> |
| </div> |
| <div class="contents"> |
| <h1>SkPackBits Class Reference</h1><!-- doxytag: class="SkPackBits" --> |
| <p><code>#include <<a class="el" href="_sk_pack_bits_8h_source.html">SkPackBits.h</a>></code></p> |
| |
| <p><a href="class_sk_pack_bits-members.html">List of all members.</a></p> |
| <table border="0" cellpadding="0" cellspacing="0"> |
| <tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr> |
| <tr><td class="memItemLeft" align="right" valign="top">static size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_sk_pack_bits.html#a18c2f3c2d8166cba668b5479275ad86c">ComputeMaxSize16</a> (int count)</td></tr> |
| <tr><td class="memItemLeft" align="right" valign="top">static size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_sk_pack_bits.html#a7de081443ff4f852a7274f0fc13e1409">ComputeMaxSize8</a> (int count)</td></tr> |
| <tr><td class="memItemLeft" align="right" valign="top">static size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_sk_pack_bits.html#aad3fec87115f6a3e0dde07f2390dd7a6">Pack16</a> (const uint16_t src[], int count, uint8_t dst[])</td></tr> |
| <tr><td class="memItemLeft" align="right" valign="top">static size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_sk_pack_bits.html#a4cf14f4e1fee19ecfa3e9a61beae747f">Pack8</a> (const uint8_t src[], int count, uint8_t dst[])</td></tr> |
| <tr><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_sk_pack_bits.html#aced94b24f2c0290f4fa67cef00efcee9">Unpack16</a> (const uint8_t src[], size_t srcSize, uint16_t dst[])</td></tr> |
| <tr><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_sk_pack_bits.html#aeb0af2d4653edd04a27c172bcbfd7689">Unpack8</a> (const uint8_t src[], size_t srcSize, uint8_t dst[])</td></tr> |
| <tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_sk_pack_bits.html#a2c44489ba6d627ccfca99d56c9cd15fa">Unpack8</a> (uint8_t dst[], size_t dstSkip, size_t dstWrite, const uint8_t src[])</td></tr> |
| </table> |
| <hr/><a name="_details"></a><h2>Detailed Description</h2> |
| |
| <p>Definition at line <a class="el" href="_sk_pack_bits_8h_source.html#l00022">22</a> of file <a class="el" href="_sk_pack_bits_8h_source.html">SkPackBits.h</a>.</p> |
| <hr/><h2>Member Function Documentation</h2> |
| <a class="anchor" id="a18c2f3c2d8166cba668b5479275ad86c"></a><!-- doxytag: member="SkPackBits::ComputeMaxSize16" ref="a18c2f3c2d8166cba668b5479275ad86c" args="(int count)" --> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static size_t SkPackBits::ComputeMaxSize16 </td> |
| <td>(</td> |
| <td class="paramtype">int </td> |
| <td class="paramname"> <em>count</em></td> |
| <td> ) </td> |
| <td><code> [static]</code></td> |
| </tr> |
| </table> |
| </div> |
| <div class="memdoc"> |
| <p>Given the number of 16bit values that will be passed to Pack16, returns the worst-case size needed for the dst[] buffer. </p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a7de081443ff4f852a7274f0fc13e1409"></a><!-- doxytag: member="SkPackBits::ComputeMaxSize8" ref="a7de081443ff4f852a7274f0fc13e1409" args="(int count)" --> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static size_t SkPackBits::ComputeMaxSize8 </td> |
| <td>(</td> |
| <td class="paramtype">int </td> |
| <td class="paramname"> <em>count</em></td> |
| <td> ) </td> |
| <td><code> [static]</code></td> |
| </tr> |
| </table> |
| </div> |
| <div class="memdoc"> |
| <p>Given the number of 8bit values that will be passed to Pack8, returns the worst-case size needed for the dst[] buffer. </p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="aad3fec87115f6a3e0dde07f2390dd7a6"></a><!-- doxytag: member="SkPackBits::Pack16" ref="aad3fec87115f6a3e0dde07f2390dd7a6" args="(const uint16_t src[], int count, uint8_t dst[])" --> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static size_t SkPackBits::Pack16 </td> |
| <td>(</td> |
| <td class="paramtype">const uint16_t </td> |
| <td class="paramname"> <em>src</em>[], </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">int </td> |
| <td class="paramname"> <em>count</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">uint8_t </td> |
| <td class="paramname"> <em>dst</em>[]</td><td> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td><td><code> [static]</code></td> |
| </tr> |
| </table> |
| </div> |
| <div class="memdoc"> |
| <p>Write the src array into a packed format. The packing process may end up writing more bytes than it read, so dst[] must be large enough. </p> |
| <dl><dt><b>Parameters:</b></dt><dd> |
| <table border="0" cellspacing="2" cellpadding="0"> |
| <tr><td valign="top"></td><td valign="top"><em>src</em> </td><td>Input array of 16bit values </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>count</em> </td><td>Number of entries in src[] </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>dst</em> </td><td>Buffer (allocated by caller) to write the packed data into </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="return"><dt><b>Returns:</b></dt><dd>the number of bytes written to dst[] </dd></dl> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a4cf14f4e1fee19ecfa3e9a61beae747f"></a><!-- doxytag: member="SkPackBits::Pack8" ref="a4cf14f4e1fee19ecfa3e9a61beae747f" args="(const uint8_t src[], int count, uint8_t dst[])" --> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static size_t SkPackBits::Pack8 </td> |
| <td>(</td> |
| <td class="paramtype">const uint8_t </td> |
| <td class="paramname"> <em>src</em>[], </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">int </td> |
| <td class="paramname"> <em>count</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">uint8_t </td> |
| <td class="paramname"> <em>dst</em>[]</td><td> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td><td><code> [static]</code></td> |
| </tr> |
| </table> |
| </div> |
| <div class="memdoc"> |
| <p>Write the src array into a packed format. The packing process may end up writing more bytes than it read, so dst[] must be large enough. </p> |
| <dl><dt><b>Parameters:</b></dt><dd> |
| <table border="0" cellspacing="2" cellpadding="0"> |
| <tr><td valign="top"></td><td valign="top"><em>src</em> </td><td>Input array of 8bit values </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>count</em> </td><td>Number of entries in src[] </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>dst</em> </td><td>Buffer (allocated by caller) to write the packed data into </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="return"><dt><b>Returns:</b></dt><dd>the number of bytes written to dst[] </dd></dl> |
| |
| </div> |
| </div> |
| <a class="anchor" id="aced94b24f2c0290f4fa67cef00efcee9"></a><!-- doxytag: member="SkPackBits::Unpack16" ref="aced94b24f2c0290f4fa67cef00efcee9" args="(const uint8_t src[], size_t srcSize, uint16_t dst[])" --> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static int SkPackBits::Unpack16 </td> |
| <td>(</td> |
| <td class="paramtype">const uint8_t </td> |
| <td class="paramname"> <em>src</em>[], </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">size_t </td> |
| <td class="paramname"> <em>srcSize</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">uint16_t </td> |
| <td class="paramname"> <em>dst</em>[]</td><td> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td><td><code> [static]</code></td> |
| </tr> |
| </table> |
| </div> |
| <div class="memdoc"> |
| <p>Unpack the data in src[], and expand it into dst[]. The src[] data was written by a previous call to Pack16. </p> |
| <dl><dt><b>Parameters:</b></dt><dd> |
| <table border="0" cellspacing="2" cellpadding="0"> |
| <tr><td valign="top"></td><td valign="top"><em>src</em> </td><td>Input data to unpack, previously created by Pack16. </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>srcSize</em> </td><td>Number of bytes of src to unpack </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>dst</em> </td><td>Buffer (allocated by caller) to expand the src[] into. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="return"><dt><b>Returns:</b></dt><dd>the number of dst elements (not bytes) written into dst. </dd></dl> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a2c44489ba6d627ccfca99d56c9cd15fa"></a><!-- doxytag: member="SkPackBits::Unpack8" ref="a2c44489ba6d627ccfca99d56c9cd15fa" args="(uint8_t dst[], size_t dstSkip, size_t dstWrite, const uint8_t src[])" --> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static void SkPackBits::Unpack8 </td> |
| <td>(</td> |
| <td class="paramtype">uint8_t </td> |
| <td class="paramname"> <em>dst</em>[], </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">size_t </td> |
| <td class="paramname"> <em>dstSkip</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">size_t </td> |
| <td class="paramname"> <em>dstWrite</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const uint8_t </td> |
| <td class="paramname"> <em>src</em>[]</td><td> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td><td><code> [static]</code></td> |
| </tr> |
| </table> |
| </div> |
| <div class="memdoc"> |
| <p>Unpack the data from src[], skip the first dstSkip bytes, then write dstWrite bytes into dst[]. The src[] data was written by a previous call to Pack8. Return the number of bytes actually writtten into dst[] </p> |
| <dl><dt><b>Parameters:</b></dt><dd> |
| <table border="0" cellspacing="2" cellpadding="0"> |
| <tr><td valign="top"></td><td valign="top"><em>src</em> </td><td>Input data to unpack, previously created by Pack8. </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>dst</em> </td><td>Buffer (allocated by caller) to expand the src[] into. </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>dstSkip</em> </td><td>Number of bytes of unpacked src to skip before writing into dst </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>dstWrite</em> </td><td>Number of bytes of unpacked src to write into dst (after skipping dstSkip bytes) </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| </div> |
| </div> |
| <a class="anchor" id="aeb0af2d4653edd04a27c172bcbfd7689"></a><!-- doxytag: member="SkPackBits::Unpack8" ref="aeb0af2d4653edd04a27c172bcbfd7689" args="(const uint8_t src[], size_t srcSize, uint8_t dst[])" --> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static int SkPackBits::Unpack8 </td> |
| <td>(</td> |
| <td class="paramtype">const uint8_t </td> |
| <td class="paramname"> <em>src</em>[], </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">size_t </td> |
| <td class="paramname"> <em>srcSize</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">uint8_t </td> |
| <td class="paramname"> <em>dst</em>[]</td><td> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td><td><code> [static]</code></td> |
| </tr> |
| </table> |
| </div> |
| <div class="memdoc"> |
| <p>Unpack the data in src[], and expand it into dst[]. The src[] data was written by a previous call to Pack8. </p> |
| <dl><dt><b>Parameters:</b></dt><dd> |
| <table border="0" cellspacing="2" cellpadding="0"> |
| <tr><td valign="top"></td><td valign="top"><em>src</em> </td><td>Input data to unpack, previously created by Pack8. </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>srcSize</em> </td><td>Number of bytes of src to unpack </td></tr> |
| <tr><td valign="top"></td><td valign="top"><em>dst</em> </td><td>Buffer (allocated by caller) to expand the src[] into. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="return"><dt><b>Returns:</b></dt><dd>the number of bytes written into dst. </dd></dl> |
| |
| </div> |
| </div> |
| <hr/>The documentation for this class was generated from the following file:<ul> |
| <li>include/core/<a class="el" href="_sk_pack_bits_8h_source.html">SkPackBits.h</a></li> |
| </ul> |
| </div> |
| <hr size="1"/><address style="text-align: right;"><small>Generated on Tue Oct 20 11:03:42 2009 for Skia by |
| <a href="http://www.doxygen.org/index.html"> |
| <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address> |
| </body> |
| </html> |