35
35
<p>Memory encoding.
36
36
<a href="#_details">More...</a></p>
38
<p><code>#include <<a class="el" href="a00104_source.html">encoding.h</a>></code></p>
38
<p><code>#include <<a class="el" href="a00105_source.html">encoding.h</a>></code></p>
39
39
<table border="0" cellpadding="0" cellspacing="0">
40
40
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
41
41
<tr><td class="memItemLeft" align="right" valign="top">typedef unsigned char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a06709edb97f0a4d861568e7813ec6d0c">position_type</a></td></tr>
44
44
<tr><td class="mdescLeft"> </td><td class="mdescRight">Construction. <a href="#a00c57cd02d8ce5a3b82ec769bf482400"></a><br/></td></tr>
45
45
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a143fd22a7268efa014474ce905db7cac">put_8</a> (unsigned char c)</td></tr>
46
46
<tr><td class="mdescLeft"> </td><td class="mdescRight">Puts one character into the encoding buffer. <a href="#a143fd22a7268efa014474ce905db7cac"></a><br/></td></tr>
47
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a9ff98e99d5c3e4d9e48fd7ecf7d2666e">put_16</a> (<a class="el" href="a00115.html#ae64960202b691ae1b6efe5fec12cb5af">bm::short_t</a> s)</td></tr>
47
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a9ff98e99d5c3e4d9e48fd7ecf7d2666e">put_16</a> (<a class="el" href="a00116.html#ae64960202b691ae1b6efe5fec12cb5af">bm::short_t</a> s)</td></tr>
48
48
<tr><td class="mdescLeft"> </td><td class="mdescRight">Puts short word (16 bits) into the encoding buffer. <a href="#a9ff98e99d5c3e4d9e48fd7ecf7d2666e"></a><br/></td></tr>
49
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a1b34e915ecd39b8b1949b6414ef75992">put_16</a> (const <a class="el" href="a00115.html#ae64960202b691ae1b6efe5fec12cb5af">bm::short_t</a> *s, unsigned count)</td></tr>
49
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a1b34e915ecd39b8b1949b6414ef75992">put_16</a> (const <a class="el" href="a00116.html#ae64960202b691ae1b6efe5fec12cb5af">bm::short_t</a> *s, unsigned count)</td></tr>
50
50
<tr><td class="mdescLeft"> </td><td class="mdescRight">Method puts array of short words (16 bits) into the encoding buffer. <a href="#a1b34e915ecd39b8b1949b6414ef75992"></a><br/></td></tr>
51
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a41455fea9cfa28ead897dd8970ce28bd">put_32</a> (<a class="el" href="a00115.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> w)</td></tr>
51
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a41455fea9cfa28ead897dd8970ce28bd">put_32</a> (<a class="el" href="a00116.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> w)</td></tr>
52
52
<tr><td class="mdescLeft"> </td><td class="mdescRight">Puts 32 bits word into encoding buffer. <a href="#a41455fea9cfa28ead897dd8970ce28bd"></a><br/></td></tr>
53
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#af7868794bedea1b4e4fa035e90dd0af0">put_32</a> (const <a class="el" href="a00115.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> *w, unsigned count)</td></tr>
53
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#af7868794bedea1b4e4fa035e90dd0af0">put_32</a> (const <a class="el" href="a00116.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> *w, unsigned count)</td></tr>
54
54
<tr><td class="mdescLeft"> </td><td class="mdescRight">Encodes array of 32-bit words. <a href="#af7868794bedea1b4e4fa035e90dd0af0"></a><br/></td></tr>
55
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a638b1dece7bf74cf685baee973f17299">put_prefixed_array_32</a> (unsigned char c, const <a class="el" href="a00115.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> *w, unsigned count)</td></tr>
56
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#ae9319ec5694324047db48244526db8a2">put_prefixed_array_16</a> (unsigned char c, const <a class="el" href="a00115.html#ae64960202b691ae1b6efe5fec12cb5af">bm::short_t</a> *s, unsigned count, bool encode_count)</td></tr>
55
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a638b1dece7bf74cf685baee973f17299">put_prefixed_array_32</a> (unsigned char c, const <a class="el" href="a00116.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> *w, unsigned count)</td></tr>
56
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#ae9319ec5694324047db48244526db8a2">put_prefixed_array_16</a> (unsigned char c, const <a class="el" href="a00116.html#ae64960202b691ae1b6efe5fec12cb5af">bm::short_t</a> *s, unsigned count, bool encode_count)</td></tr>
57
57
<tr><td class="memItemLeft" align="right" valign="top">unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#a6e2954f43df9eaabbd08b2922fa45c00">size</a> () const </td></tr>
58
58
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns size of the current encoding stream. <a href="#a6e2954f43df9eaabbd08b2922fa45c00"></a><br/></td></tr>
59
59
<tr><td class="memItemLeft" align="right" valign="top">unsigned char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00062.html#af31fd9ee56e453ab02d9d6e88c6b51c3">get_pos</a> () const </td></tr>
65
65
<p>Memory encoding. </p>
66
66
<p>Class for encoding data into memory. Properly handles aligment issues with integer data types. </p>
68
<p>Definition at line <a class="el" href="a00104_source.html#l00045">45</a> of file <a class="el" href="a00104_source.html">encoding.h</a>.</p>
68
<p>Definition at line <a class="el" href="a00105_source.html#l00045">45</a> of file <a class="el" href="a00105_source.html">encoding.h</a>.</p>
69
69
<hr/><h2>Member Typedef Documentation</h2>
70
70
<a class="anchor" id="a06709edb97f0a4d861568e7813ec6d0c"></a><!-- doxytag: member="bm::encoder::position_type" ref="a06709edb97f0a4d861568e7813ec6d0c" args="" -->
71
71
<div class="memitem">
140
140
<p>Get current memory stream position. </p>
142
<p>Definition at line <a class="el" href="a00104_source.html#l00611">611</a> of file <a class="el" href="a00104_source.html">encoding.h</a>.</p>
142
<p>Definition at line <a class="el" href="a00105_source.html#l00611">611</a> of file <a class="el" href="a00105_source.html">encoding.h</a>.</p>
144
<p>Referenced by <a class="el" href="a00096_source.html#l00606">bm::serializer< BV >::gamma_gap_array()</a>, and <a class="el" href="a00096_source.html#l00569">bm::serializer< BV >::gamma_gap_block()</a>.</p>
144
<p>Referenced by <a class="el" href="a00097_source.html#l00658">bm::serializer< BV >::gamma_gap_array()</a>, and <a class="el" href="a00097_source.html#l00621">bm::serializer< BV >::gamma_gap_block()</a>.</p>
203
<p>Definition at line <a class="el" href="a00104_source.html#l00554">554</a> of file <a class="el" href="a00104_source.html">encoding.h</a>.</p>
203
<p>Definition at line <a class="el" href="a00105_source.html#l00554">554</a> of file <a class="el" href="a00105_source.html">encoding.h</a>.</p>
205
<p>Referenced by <a class="el" href="a00096_source.html#l00706">bm::serializer< BV >::encode_bit_interval()</a>, <a class="el" href="a00096_source.html#l00653">bm::serializer< BV >::encode_gap_block()</a>, <a class="el" href="a00096_source.html#l00530">bm::serializer< BV >::encode_header()</a>, <a class="el" href="a00096_source.html#l00569">bm::serializer< BV >::gamma_gap_block()</a>, <a class="el" href="a00104_source.html#l00527">put_prefixed_array_16()</a>, and <a class="el" href="a00096_source.html#l00758">bm::serializer< BV >::serialize()</a>.</p>
205
<p>Referenced by <a class="el" href="a00097_source.html#l00758">bm::serializer< BV >::encode_bit_interval()</a>, <a class="el" href="a00097_source.html#l00705">bm::serializer< BV >::encode_gap_block()</a>, <a class="el" href="a00097_source.html#l00582">bm::serializer< BV >::encode_header()</a>, <a class="el" href="a00097_source.html#l00621">bm::serializer< BV >::gamma_gap_block()</a>, <a class="el" href="a00105_source.html#l00527">put_prefixed_array_16()</a>, and <a class="el" href="a00097_source.html#l00810">bm::serializer< BV >::serialize()</a>.</p>
264
<p>Definition at line <a class="el" href="a00104_source.html#l00630">630</a> of file <a class="el" href="a00104_source.html">encoding.h</a>.</p>
264
<p>Definition at line <a class="el" href="a00105_source.html#l00630">630</a> of file <a class="el" href="a00105_source.html">encoding.h</a>.</p>
266
<p>Referenced by <a class="el" href="a00096_source.html#l00706">bm::serializer< BV >::encode_bit_interval()</a>, <a class="el" href="a00096_source.html#l00530">bm::serializer< BV >::encode_header()</a>, and <a class="el" href="a00104_source.html#l00516">put_prefixed_array_32()</a>.</p>
266
<p>Referenced by <a class="el" href="a00097_source.html#l00758">bm::serializer< BV >::encode_bit_interval()</a>, <a class="el" href="a00097_source.html#l00582">bm::serializer< BV >::encode_header()</a>, and <a class="el" href="a00105_source.html#l00516">put_prefixed_array_32()</a>.</p>
294
<p>Definition at line <a class="el" href="a00104_source.html#l00544">544</a> of file <a class="el" href="a00104_source.html">encoding.h</a>.</p>
294
<p>Definition at line <a class="el" href="a00105_source.html#l00544">544</a> of file <a class="el" href="a00105_source.html">encoding.h</a>.</p>
296
<p>Referenced by <a class="el" href="a00096_source.html#l00706">bm::serializer< BV >::encode_bit_interval()</a>, <a class="el" href="a00096_source.html#l00653">bm::serializer< BV >::encode_gap_block()</a>, <a class="el" href="a00096_source.html#l00530">bm::serializer< BV >::encode_header()</a>, <a class="el" href="a00096_source.html#l00606">bm::serializer< BV >::gamma_gap_array()</a>, <a class="el" href="a00096_source.html#l00569">bm::serializer< BV >::gamma_gap_block()</a>, <a class="el" href="a00104_source.html#l00527">put_prefixed_array_16()</a>, <a class="el" href="a00104_source.html#l00516">put_prefixed_array_32()</a>, and <a class="el" href="a00096_source.html#l00758">bm::serializer< BV >::serialize()</a>.</p>
296
<p>Referenced by <a class="el" href="a00097_source.html#l00758">bm::serializer< BV >::encode_bit_interval()</a>, <a class="el" href="a00097_source.html#l00705">bm::serializer< BV >::encode_gap_block()</a>, <a class="el" href="a00097_source.html#l00582">bm::serializer< BV >::encode_header()</a>, <a class="el" href="a00097_source.html#l00658">bm::serializer< BV >::gamma_gap_array()</a>, <a class="el" href="a00097_source.html#l00621">bm::serializer< BV >::gamma_gap_block()</a>, <a class="el" href="a00105_source.html#l00527">put_prefixed_array_16()</a>, <a class="el" href="a00105_source.html#l00516">put_prefixed_array_32()</a>, and <a class="el" href="a00097_source.html#l00810">bm::serializer< BV >::serialize()</a>.</p>
335
335
<div class="memdoc">
336
336
<p>Encode 8-bit prefix + an array </p>
338
<p>Definition at line <a class="el" href="a00104_source.html#l00527">527</a> of file <a class="el" href="a00104_source.html">encoding.h</a>.</p>
340
<p>References <a class="el" href="a00104_source.html#l00554">put_16()</a>, and <a class="el" href="a00104_source.html#l00544">put_8()</a>.</p>
342
<p>Referenced by <a class="el" href="a00096_source.html#l00606">bm::serializer< BV >::gamma_gap_array()</a>.</p>
338
<p>Definition at line <a class="el" href="a00105_source.html#l00527">527</a> of file <a class="el" href="a00105_source.html">encoding.h</a>.</p>
340
<p>References <a class="el" href="a00105_source.html#l00554">put_16()</a>, and <a class="el" href="a00105_source.html#l00544">put_8()</a>.</p>
342
<p>Referenced by <a class="el" href="a00097_source.html#l00658">bm::serializer< BV >::gamma_gap_array()</a>.</p>
375
375
<div class="memdoc">
376
376
<p>Encode 8-bit prefix + an array </p>
378
<p>Definition at line <a class="el" href="a00104_source.html#l00516">516</a> of file <a class="el" href="a00104_source.html">encoding.h</a>.</p>
380
<p>References <a class="el" href="a00104_source.html#l00630">put_32()</a>, and <a class="el" href="a00104_source.html#l00544">put_8()</a>.</p>
382
<p>Referenced by <a class="el" href="a00096_source.html#l00758">bm::serializer< BV >::serialize()</a>.</p>
378
<p>Definition at line <a class="el" href="a00105_source.html#l00516">516</a> of file <a class="el" href="a00105_source.html">encoding.h</a>.</p>
380
<p>References <a class="el" href="a00105_source.html#l00630">put_32()</a>, and <a class="el" href="a00105_source.html#l00544">put_8()</a>.</p>
382
<p>Referenced by <a class="el" href="a00097_source.html#l00810">bm::serializer< BV >::serialize()</a>.</p>
402
402
<p>Set current memory stream position. </p>
404
<p>Definition at line <a class="el" href="a00104_source.html#l00619">619</a> of file <a class="el" href="a00104_source.html">encoding.h</a>.</p>
404
<p>Definition at line <a class="el" href="a00105_source.html#l00619">619</a> of file <a class="el" href="a00105_source.html">encoding.h</a>.</p>
406
<p>Referenced by <a class="el" href="a00096_source.html#l00606">bm::serializer< BV >::gamma_gap_array()</a>, and <a class="el" href="a00096_source.html#l00569">bm::serializer< BV >::gamma_gap_block()</a>.</p>
406
<p>Referenced by <a class="el" href="a00097_source.html#l00658">bm::serializer< BV >::gamma_gap_array()</a>, and <a class="el" href="a00097_source.html#l00621">bm::serializer< BV >::gamma_gap_block()</a>.</p>
425
425
<p>Returns size of the current encoding stream. </p>
427
<p>Definition at line <a class="el" href="a00104_source.html#l00603">603</a> of file <a class="el" href="a00104_source.html">encoding.h</a>.</p>
427
<p>Definition at line <a class="el" href="a00105_source.html#l00603">603</a> of file <a class="el" href="a00105_source.html">encoding.h</a>.</p>
429
<p>Referenced by <a class="el" href="a00096_source.html#l00758">bm::serializer< BV >::serialize()</a>.</p>
429
<p>Referenced by <a class="el" href="a00097_source.html#l00810">bm::serializer< BV >::serialize()</a>.</p>
433
433
<hr/>The documentation for this class was generated from the following file:<ul>
434
<li><a class="el" href="a00104_source.html">encoding.h</a></li>
434
<li><a class="el" href="a00105_source.html">encoding.h</a></li>
437
<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Jan 8 20:09:20 2010 for BitMagic by
437
<hr size="1"/><address style="text-align: right;"><small>Generated on Tue Mar 23 20:48:13 2010 for BitMagic by
438
438
<a href="http://www.doxygen.org/index.html">
439
439
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>