~ubuntu-branches/ubuntu/trusty/bmagic/trusty

« back to all changes in this revision

Viewing changes to doc/html/a00080.html

  • Committer: Bazaar Package Importer
  • Author(s): Roberto C. Sanchez
  • Date: 2010-01-24 14:45:39 UTC
  • mfrom: (4.1.6 sid)
  • Revision ID: james.westby@ubuntu.com-20100124144539-4ipk5rt64dpp38hl
Tags: 3.6.3-1
* New upstream release
* debian/patches/config.guess.patch: drop obsolete patch
* Add ${misc:Depends} as requested by lintian

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
<html xmlns="http://www.w3.org/1999/xhtml">
3
3
<head>
4
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
 
<title>BitMagic: bm::serializer&lt; BV &gt; Class Template Reference</title>
 
5
<title>BitMagic: bm::bvector&lt; Alloc, MS &gt;::reference Class Reference</title>
6
6
<link href="tabs.css" rel="stylesheet" type="text/css"/>
7
7
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
8
8
</head>
27
27
      <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
28
28
    </ul>
29
29
  </div>
30
 
  <div class="navpath"><a class="el" href="a00110.html">bm</a>::<a class="el" href="a00080.html">serializer</a>
 
30
  <div class="navpath"><a class="el" href="a00115.html">bm</a>::<a class="el" href="a00044.html">bvector</a>::<a class="el" href="a00080.html">reference</a>
31
31
  </div>
32
32
</div>
33
33
<div class="contents">
34
 
<h1>bm::serializer&lt; BV &gt; Class Template Reference<br/>
 
34
<h1>bm::bvector&lt; Alloc, MS &gt;::reference Class Reference<br/>
35
35
<small>
36
 
[<a class="el" href="a00121.html">bvector serialization</a>]</small>
37
 
</h1><!-- doxytag: class="bm::serializer" -->
38
 
<p>Bit-vector serialization class.  
 
36
[<a class="el" href="a00118.html">The Main bvector&lt;&gt; Group</a>]</small>
 
37
</h1><!-- doxytag: class="bm::bvector::reference" -->
 
38
<p>Class <a class="el" href="a00080.html" title="Class reference implements an object for bit assignment.">reference</a> implements an object for bit assignment.  
39
39
<a href="#_details">More...</a></p>
40
40
 
41
 
<p><code>#include &lt;<a class="el" href="a00092_source.html">bmserial.h</a>&gt;</code></p>
 
41
<p><code>#include &lt;<a class="el" href="a00087_source.html">bm.h</a>&gt;</code></p>
42
42
<table border="0" cellpadding="0" cellspacing="0">
43
 
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
44
 
<tr><td class="memItemLeft" align="right" valign="top">typedef BV::allocator_type&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a59fca7741f95b36a196773ac1810c52c">allocator_type</a></td></tr>
45
 
<tr><td class="memItemLeft" align="right" valign="top">typedef BV::blocks_manager_type&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a33209dcd954f9cadff5a3379108d84e0">blocks_manager_type</a></td></tr>
46
43
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
47
 
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a49b063cc7e0d53b8875f893bff37c7fa">serializer</a> (const <a class="el" href="a00080.html#a59fca7741f95b36a196773ac1810c52c">allocator_type</a> &amp;alloc=<a class="el" href="a00080.html#a59fca7741f95b36a196773ac1810c52c">allocator_type</a>())</td></tr>
48
 
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a6cb13dcbfb820fc7e90a959937f2f461">~serializer</a> ()</td></tr>
49
 
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#ad433d790f07103d39c5f15a6caaf2823">set_compression_level</a> (unsigned clevel)</td></tr>
50
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set compression level.  <a href="#ad433d790f07103d39c5f15a6caaf2823"></a><br/></td></tr>
51
 
<tr><td class="memItemLeft" align="right" valign="top">unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#ada73fe9103470fc726968cd0e8dbe04f">get_compression_level</a> () const </td></tr>
52
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get compression level.  <a href="#ada73fe9103470fc726968cd0e8dbe04f"></a><br/></td></tr>
53
 
<tr><td class="memItemLeft" align="right" valign="top">unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#af747ada0a8f77d79d73b34443595f4d4">serialize</a> (const BV &amp;bv, unsigned char *buf, unsigned buf_size)</td></tr>
54
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Bitvector serilization into memory block.  <a href="#af747ada0a8f77d79d73b34443595f4d4"></a><br/></td></tr>
55
 
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a5b19026c2e928c639f09da4a4e1235ab">gap_length_serialization</a> (bool value)</td></tr>
56
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set GAP length serialization (serializes GAP levels of the original vector).  <a href="#a5b19026c2e928c639f09da4a4e1235ab"></a><br/></td></tr>
57
 
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a892b124d42bb939485e47d197b8dc1ac">byte_order_serialization</a> (bool value)</td></tr>
58
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set byte-order serialization (for cross platform compatibility).  <a href="#a892b124d42bb939485e47d197b8dc1ac"></a><br/></td></tr>
59
 
<tr><td colspan="2"><h2>Protected Member Functions</h2></td></tr>
60
 
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a341d5819f2f1164172f4c0c4771ec941">encode_header</a> (const BV &amp;bv, <a class="el" href="a00061.html">bm::encoder</a> &amp;enc)</td></tr>
61
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Encode serialization header information.  <a href="#a341d5819f2f1164172f4c0c4771ec941"></a><br/></td></tr>
62
 
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a77bfac165158b3a018654d88fbed0121">encode_gap_block</a> (<a class="el" href="a00110.html#ac654d6319039a86546d235a236fc7cf6">bm::gap_word_t</a> *gap_block, <a class="el" href="a00061.html">bm::encoder</a> &amp;enc)</td></tr>
63
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Encode GAP block.  <a href="#a77bfac165158b3a018654d88fbed0121"></a><br/></td></tr>
64
 
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#aa7eac0e670c3ff98404a5f1dcec1ef33">gamma_gap_block</a> (<a class="el" href="a00110.html#ac654d6319039a86546d235a236fc7cf6">bm::gap_word_t</a> *gap_block, <a class="el" href="a00061.html">bm::encoder</a> &amp;enc)</td></tr>
65
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Encode GAP block with Elias Gamma coder.  <a href="#aa7eac0e670c3ff98404a5f1dcec1ef33"></a><br/></td></tr>
66
 
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a88e75dd5bc8234634b21c7d3dcddc8c6">gamma_gap_array</a> (const <a class="el" href="a00110.html#ac654d6319039a86546d235a236fc7cf6">bm::gap_word_t</a> *gap_block, unsigned arr_len, <a class="el" href="a00061.html">bm::encoder</a> &amp;enc, bool inverted=false)</td></tr>
67
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Encode GAP block as delta-array with Elias Gamma coder.  <a href="#a88e75dd5bc8234634b21c7d3dcddc8c6"></a><br/></td></tr>
68
 
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a2c005feac8bc059af3333234c52739ed">encode_bit_interval</a> (const <a class="el" href="a00110.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> *blk, <a class="el" href="a00061.html">bm::encoder</a> &amp;enc, unsigned size_control)</td></tr>
69
 
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Encode BIT block with repeatable runs of zeroes.  <a href="#a2c005feac8bc059af3333234c52739ed"></a><br/></td></tr>
 
44
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#ace927b54c909478e30a5dd38ccb0c0d6">reference</a> (<a class="el" href="a00044.html">bvector</a>&lt; Alloc, MS &gt; &amp;bv, <a class="el" href="a00115.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a> position)</td></tr>
 
45
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a46fc4910419c5ea5de6158660fada675">reference</a> (const <a class="el" href="a00080.html">reference</a> &amp;ref)</td></tr>
 
46
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a4d531a670ed0e8cfca01342fe02f030e">operator bool</a> () const </td></tr>
 
47
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00080.html">reference</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#ac597a766c4942da598682c4917ee41c6">operator=</a> (const <a class="el" href="a00080.html">reference</a> &amp;ref) const </td></tr>
 
48
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00080.html">reference</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#ae7fd4a0de8fe3d984322e8a690feeb5a">operator=</a> (bool value) const </td></tr>
 
49
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#ab761552f565e9ecfe263fd8325d50852">operator==</a> (const <a class="el" href="a00080.html">reference</a> &amp;ref) const </td></tr>
 
50
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00080.html">reference</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a78514f588110835ecd21f3c8737b6a3f">operator&amp;=</a> (bool value) const </td></tr>
 
51
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00080.html">reference</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#acbf8b97f7b52f1c9b81a1d9129986cff">operator|=</a> (bool value) const </td></tr>
 
52
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00080.html">reference</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a94e3b8c46d1f83c5999c8eaf426b8e9b">operator^=</a> (bool value) const </td></tr>
 
53
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#aa214fa361c24c57c9fd4d26441ff6c12">operator!</a> () const </td></tr>
 
54
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a70357e67d8022147971ad970a80108d0">operator~</a> () const </td></tr>
 
55
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00080.html">reference</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00080.html#a31f8e1425e1563f1f5890b77f736f323">flip</a> ()</td></tr>
70
56
</table>
71
57
<hr/><a name="_details"></a><h2>Detailed Description</h2>
72
 
<h3>template&lt;class BV&gt;<br/>
73
 
 class bm::serializer&lt; BV &gt;</h3>
74
 
 
75
 
<p>Bit-vector serialization class. </p>
76
 
<p>Class designed to convert sparse bit-vector into a block of memory ready for file or database storage or network transfer. </p>
77
 
<dl><dt><b>Examples: </b></dt><dd>
78
 
<p><a class="el" href="a00004.html#_a13">sample4.cpp</a>.</p>
79
 
</dd>
80
 
</dl>
81
 
<p>Definition at line <a class="el" href="a00092_source.html#l00145">145</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
82
 
<hr/><h2>Member Typedef Documentation</h2>
83
 
<a class="anchor" id="a59fca7741f95b36a196773ac1810c52c"></a><!-- doxytag: member="bm::serializer::allocator_type" ref="a59fca7741f95b36a196773ac1810c52c" args="" -->
84
 
<div class="memitem">
85
 
<div class="memproto">
86
 
<div class="memtemplate">
87
 
template&lt;class BV&gt; </div>
88
 
      <table class="memname">
89
 
        <tr>
90
 
          <td class="memname">typedef BV::allocator_type <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::<a class="el" href="a00080.html#a59fca7741f95b36a196773ac1810c52c">allocator_type</a></td>
91
 
        </tr>
92
 
      </table>
93
 
</div>
94
 
<div class="memdoc">
95
 
 
96
 
<p>Definition at line <a class="el" href="a00092_source.html#l00148">148</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
97
 
 
98
 
</div>
99
 
</div>
100
 
<a class="anchor" id="a33209dcd954f9cadff5a3379108d84e0"></a><!-- doxytag: member="bm::serializer::blocks_manager_type" ref="a33209dcd954f9cadff5a3379108d84e0" args="" -->
101
 
<div class="memitem">
102
 
<div class="memproto">
103
 
<div class="memtemplate">
104
 
template&lt;class BV&gt; </div>
105
 
      <table class="memname">
106
 
        <tr>
107
 
          <td class="memname">typedef BV::blocks_manager_type <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::<a class="el" href="a00080.html#a33209dcd954f9cadff5a3379108d84e0">blocks_manager_type</a></td>
108
 
        </tr>
109
 
      </table>
110
 
</div>
111
 
<div class="memdoc">
112
 
 
113
 
<p>Definition at line <a class="el" href="a00092_source.html#l00149">149</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
114
 
 
115
 
</div>
116
 
</div>
 
58
<h3>template&lt;class Alloc, class MS&gt;<br/>
 
59
 class bm::bvector&lt; Alloc, MS &gt;::reference</h3>
 
60
 
 
61
<p>Class <a class="el" href="a00080.html" title="Class reference implements an object for bit assignment.">reference</a> implements an object for bit assignment. </p>
 
62
<p>Since C++ does not provide with build-in bit type supporting l-value operations we have to emulate it. </p>
 
63
 
 
64
<p>Definition at line <a class="el" href="a00087_source.html#l00140">140</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
117
65
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
118
 
<a class="anchor" id="a49b063cc7e0d53b8875f893bff37c7fa"></a><!-- doxytag: member="bm::serializer::serializer" ref="a49b063cc7e0d53b8875f893bff37c7fa" args="(const allocator_type &amp;alloc=allocator_type())" -->
119
 
<div class="memitem">
120
 
<div class="memproto">
121
 
<div class="memtemplate">
122
 
template&lt;class BV &gt; </div>
123
 
      <table class="memname">
124
 
        <tr>
125
 
          <td class="memname"><a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::<a class="el" href="a00080.html">serializer</a> </td>
126
 
          <td>(</td>
127
 
          <td class="paramtype">const <a class="el" href="a00080.html#a59fca7741f95b36a196773ac1810c52c">allocator_type</a> &amp;&nbsp;</td>
128
 
          <td class="paramname"> <em>alloc</em> = <code><a class="el" href="a00080.html#a59fca7741f95b36a196773ac1810c52c">allocator_type</a>()</code></td>
129
 
          <td>&nbsp;)&nbsp;</td>
130
 
          <td><code> [inline]</code></td>
131
 
        </tr>
132
 
      </table>
133
 
</div>
134
 
<div class="memdoc">
135
 
 
136
 
<p>Definition at line <a class="el" href="a00092_source.html#l00488">488</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
137
 
 
138
 
</div>
139
 
</div>
140
 
<a class="anchor" id="a6cb13dcbfb820fc7e90a959937f2f461"></a><!-- doxytag: member="bm::serializer::~serializer" ref="a6cb13dcbfb820fc7e90a959937f2f461" args="()" -->
141
 
<div class="memitem">
142
 
<div class="memproto">
143
 
<div class="memtemplate">
144
 
template&lt;class BV &gt; </div>
145
 
      <table class="memname">
146
 
        <tr>
147
 
          <td class="memname"><a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::~<a class="el" href="a00080.html">serializer</a> </td>
148
 
          <td>(</td>
149
 
          <td class="paramname"></td>
150
 
          <td>&nbsp;)&nbsp;</td>
151
 
          <td><code> [inline]</code></td>
152
 
        </tr>
153
 
      </table>
154
 
</div>
155
 
<div class="memdoc">
156
 
 
157
 
<p>Definition at line <a class="el" href="a00092_source.html#l00511">511</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
 
66
<a class="anchor" id="ace927b54c909478e30a5dd38ccb0c0d6"></a><!-- doxytag: member="bm::bvector::reference::reference" ref="ace927b54c909478e30a5dd38ccb0c0d6" args="(bvector&lt; Alloc, MS &gt; &amp;bv, bm::id_t position)" -->
 
67
<div class="memitem">
 
68
<div class="memproto">
 
69
<div class="memtemplate">
 
70
template&lt;class Alloc, class MS&gt; </div>
 
71
      <table class="memname">
 
72
        <tr>
 
73
          <td class="memname"><a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::reference </td>
 
74
          <td>(</td>
 
75
          <td class="paramtype"><a class="el" href="a00044.html">bvector</a>&lt; Alloc, MS &gt; &amp;&nbsp;</td>
 
76
          <td class="paramname"> <em>bv</em>, </td>
 
77
        </tr>
 
78
        <tr>
 
79
          <td class="paramkey"></td>
 
80
          <td></td>
 
81
          <td class="paramtype"><a class="el" href="a00115.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a>&nbsp;</td>
 
82
          <td class="paramname"> <em>position</em></td><td>&nbsp;</td>
 
83
        </tr>
 
84
        <tr>
 
85
          <td></td>
 
86
          <td>)</td>
 
87
          <td></td><td></td><td><code> [inline]</code></td>
 
88
        </tr>
 
89
      </table>
 
90
</div>
 
91
<div class="memdoc">
 
92
 
 
93
<p>Definition at line <a class="el" href="a00087_source.html#l00143">143</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
94
 
 
95
</div>
 
96
</div>
 
97
<a class="anchor" id="a46fc4910419c5ea5de6158660fada675"></a><!-- doxytag: member="bm::bvector::reference::reference" ref="a46fc4910419c5ea5de6158660fada675" args="(const reference &amp;ref)" -->
 
98
<div class="memitem">
 
99
<div class="memproto">
 
100
<div class="memtemplate">
 
101
template&lt;class Alloc, class MS&gt; </div>
 
102
      <table class="memname">
 
103
        <tr>
 
104
          <td class="memname"><a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::reference </td>
 
105
          <td>(</td>
 
106
          <td class="paramtype">const <a class="el" href="a00080.html">reference</a> &amp;&nbsp;</td>
 
107
          <td class="paramname"> <em>ref</em></td>
 
108
          <td>&nbsp;)&nbsp;</td>
 
109
          <td><code> [inline]</code></td>
 
110
        </tr>
 
111
      </table>
 
112
</div>
 
113
<div class="memdoc">
 
114
 
 
115
<p>Definition at line <a class="el" href="a00087_source.html#l00148">148</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
158
116
 
159
117
</div>
160
118
</div>
161
119
<hr/><h2>Member Function Documentation</h2>
162
 
<a class="anchor" id="a892b124d42bb939485e47d197b8dc1ac"></a><!-- doxytag: member="bm::serializer::byte_order_serialization" ref="a892b124d42bb939485e47d197b8dc1ac" args="(bool value)" -->
163
 
<div class="memitem">
164
 
<div class="memproto">
165
 
<div class="memtemplate">
166
 
template&lt;class BV &gt; </div>
167
 
      <table class="memname">
168
 
        <tr>
169
 
          <td class="memname">void <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::byte_order_serialization </td>
170
 
          <td>(</td>
171
 
          <td class="paramtype">bool&nbsp;</td>
172
 
          <td class="paramname"> <em>value</em></td>
173
 
          <td>&nbsp;)&nbsp;</td>
174
 
          <td><code> [inline]</code></td>
175
 
        </tr>
176
 
      </table>
177
 
</div>
178
 
<div class="memdoc">
179
 
 
180
 
<p>Set byte-order serialization (for cross platform compatibility). </p>
181
 
<dl><dt><b>Parameters:</b></dt><dd>
182
 
  <table border="0" cellspacing="2" cellpadding="0">
183
 
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>- TRUE serialization format includes byte-order marker </td></tr>
184
 
  </table>
185
 
  </dd>
186
 
</dl>
187
 
 
188
 
<p>Definition at line <a class="el" href="a00092_source.html#l00524">524</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
189
 
 
190
 
<p>Referenced by <a class="el" href="a00104_source.html#l00107">main()</a>, and <a class="el" href="a00092_source.html#l01028">bm::serialize()</a>.</p>
191
 
 
192
 
</div>
193
 
</div>
194
 
<a class="anchor" id="a2c005feac8bc059af3333234c52739ed"></a><!-- doxytag: member="bm::serializer::encode_bit_interval" ref="a2c005feac8bc059af3333234c52739ed" args="(const bm::word_t *blk, bm::encoder &amp;enc, unsigned size_control)" -->
195
 
<div class="memitem">
196
 
<div class="memproto">
197
 
<div class="memtemplate">
198
 
template&lt;class BV &gt; </div>
199
 
      <table class="memname">
200
 
        <tr>
201
 
          <td class="memname">void <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::encode_bit_interval </td>
202
 
          <td>(</td>
203
 
          <td class="paramtype">const <a class="el" href="a00110.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> *&nbsp;</td>
204
 
          <td class="paramname"> <em>blk</em>, </td>
205
 
        </tr>
206
 
        <tr>
207
 
          <td class="paramkey"></td>
208
 
          <td></td>
209
 
          <td class="paramtype"><a class="el" href="a00061.html">bm::encoder</a> &amp;&nbsp;</td>
210
 
          <td class="paramname"> <em>enc</em>, </td>
211
 
        </tr>
212
 
        <tr>
213
 
          <td class="paramkey"></td>
214
 
          <td></td>
215
 
          <td class="paramtype">unsigned&nbsp;</td>
216
 
          <td class="paramname"> <em>size_control</em></td><td>&nbsp;</td>
217
 
        </tr>
218
 
        <tr>
219
 
          <td></td>
220
 
          <td>)</td>
221
 
          <td></td><td></td><td><code> [inline, protected]</code></td>
222
 
        </tr>
223
 
      </table>
224
 
</div>
225
 
<div class="memdoc">
226
 
 
227
 
<p>Encode BIT block with repeatable runs of zeroes. </p>
228
 
 
229
 
<p>Definition at line <a class="el" href="a00092_source.html#l00706">706</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
230
 
 
231
 
<p>References <a class="el" href="a00089_source.html#l00047">BM_ASSERT</a>, <a class="el" href="a00100_source.html#l00554">bm::encoder::put_16()</a>, <a class="el" href="a00100_source.html#l00630">bm::encoder::put_32()</a>, <a class="el" href="a00100_source.html#l00544">bm::encoder::put_8()</a>, <a class="el" href="a00092_source.html#l00088">bm::set_block_bit_0runs</a>, and <a class="el" href="a00088_source.html#l00052">bm::set_block_size</a>.</p>
232
 
 
233
 
<p>Referenced by <a class="el" href="a00092_source.html#l00758">bm::serializer&lt; BV &gt;::serialize()</a>.</p>
234
 
 
235
 
</div>
236
 
</div>
237
 
<a class="anchor" id="a77bfac165158b3a018654d88fbed0121"></a><!-- doxytag: member="bm::serializer::encode_gap_block" ref="a77bfac165158b3a018654d88fbed0121" args="(bm::gap_word_t *gap_block, bm::encoder &amp;enc)" -->
238
 
<div class="memitem">
239
 
<div class="memproto">
240
 
<div class="memtemplate">
241
 
template&lt;class BV &gt; </div>
242
 
      <table class="memname">
243
 
        <tr>
244
 
          <td class="memname">void <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::encode_gap_block </td>
245
 
          <td>(</td>
246
 
          <td class="paramtype"><a class="el" href="a00110.html#ac654d6319039a86546d235a236fc7cf6">bm::gap_word_t</a> *&nbsp;</td>
247
 
          <td class="paramname"> <em>gap_block</em>, </td>
248
 
        </tr>
249
 
        <tr>
250
 
          <td class="paramkey"></td>
251
 
          <td></td>
252
 
          <td class="paramtype"><a class="el" href="a00061.html">bm::encoder</a> &amp;&nbsp;</td>
253
 
          <td class="paramname"> <em>enc</em></td><td>&nbsp;</td>
254
 
        </tr>
255
 
        <tr>
256
 
          <td></td>
257
 
          <td>)</td>
258
 
          <td></td><td></td><td><code> [inline, protected]</code></td>
259
 
        </tr>
260
 
      </table>
261
 
</div>
262
 
<div class="memdoc">
263
 
 
264
 
<p>Encode GAP block. </p>
265
 
 
266
 
<p>Definition at line <a class="el" href="a00092_source.html#l00653">653</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
267
 
 
268
 
<p>References <a class="el" href="a00089_source.html#l00047">BM_ASSERT</a>, <a class="el" href="a00092_source.html#l00606">bm::serializer&lt; BV &gt;::gamma_gap_array()</a>, <a class="el" href="a00092_source.html#l00569">bm::serializer&lt; BV &gt;::gamma_gap_block()</a>, <a class="el" href="a00090_source.html#l00618">bm::gap_bit_count()</a>, <a class="el" href="a00090_source.html#l02411">bm::gap_convert_to_arr()</a>, <a class="el" href="a00088_source.html#l00072">bm::gap_equiv_len</a>, <a class="el" href="a00090_source.html#l02122">bm::gap_length()</a>, <a class="el" href="a00088_source.html#l00071">bm::gap_max_bits</a>, <a class="el" href="a00100_source.html#l00554">bm::encoder::put_16()</a>, <a class="el" href="a00100_source.html#l00544">bm::encoder::put_8()</a>, and <a class="el" href="a00092_source.html#l00085">bm::set_block_bit_1bit</a>.</p>
269
 
 
270
 
<p>Referenced by <a class="el" href="a00092_source.html#l00758">bm::serializer&lt; BV &gt;::serialize()</a>.</p>
271
 
 
272
 
</div>
273
 
</div>
274
 
<a class="anchor" id="a341d5819f2f1164172f4c0c4771ec941"></a><!-- doxytag: member="bm::serializer::encode_header" ref="a341d5819f2f1164172f4c0c4771ec941" args="(const BV &amp;bv, bm::encoder &amp;enc)" -->
275
 
<div class="memitem">
276
 
<div class="memproto">
277
 
<div class="memtemplate">
278
 
template&lt;class BV &gt; </div>
279
 
      <table class="memname">
280
 
        <tr>
281
 
          <td class="memname">void <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::encode_header </td>
282
 
          <td>(</td>
283
 
          <td class="paramtype">const BV &amp;&nbsp;</td>
284
 
          <td class="paramname"> <em>bv</em>, </td>
285
 
        </tr>
286
 
        <tr>
287
 
          <td class="paramkey"></td>
288
 
          <td></td>
289
 
          <td class="paramtype"><a class="el" href="a00061.html">bm::encoder</a> &amp;&nbsp;</td>
290
 
          <td class="paramname"> <em>enc</em></td><td>&nbsp;</td>
291
 
        </tr>
292
 
        <tr>
293
 
          <td></td>
294
 
          <td>)</td>
295
 
          <td></td><td></td><td><code> [inline, protected]</code></td>
296
 
        </tr>
297
 
      </table>
298
 
</div>
299
 
<div class="memdoc">
300
 
 
301
 
<p>Encode serialization header information. </p>
302
 
 
303
 
<p>Definition at line <a class="el" href="a00092_source.html#l00530">530</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
304
 
 
305
 
<p>References <a class="el" href="a00092_source.html#l00096">bm::BM_HM_DEFAULT</a>, <a class="el" href="a00092_source.html#l00099">bm::BM_HM_NO_BO</a>, <a class="el" href="a00092_source.html#l00100">bm::BM_HM_NO_GAPL</a>, <a class="el" href="a00092_source.html#l00097">bm::BM_HM_RESIZE</a>, <a class="el" href="a00088_source.html#l00074">bm::gap_levels</a>, <a class="el" href="a00088_source.html#l00048">bm::id_max</a>, <a class="el" href="a00100_source.html#l00554">bm::encoder::put_16()</a>, <a class="el" href="a00100_source.html#l00630">bm::encoder::put_32()</a>, and <a class="el" href="a00100_source.html#l00544">bm::encoder::put_8()</a>.</p>
306
 
 
307
 
<p>Referenced by <a class="el" href="a00092_source.html#l00758">bm::serializer&lt; BV &gt;::serialize()</a>.</p>
308
 
 
309
 
</div>
310
 
</div>
311
 
<a class="anchor" id="a88e75dd5bc8234634b21c7d3dcddc8c6"></a><!-- doxytag: member="bm::serializer::gamma_gap_array" ref="a88e75dd5bc8234634b21c7d3dcddc8c6" args="(const bm::gap_word_t *gap_block, unsigned arr_len, bm::encoder &amp;enc, bool inverted=false)" -->
312
 
<div class="memitem">
313
 
<div class="memproto">
314
 
<div class="memtemplate">
315
 
template&lt;class BV &gt; </div>
316
 
      <table class="memname">
317
 
        <tr>
318
 
          <td class="memname">void <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::gamma_gap_array </td>
319
 
          <td>(</td>
320
 
          <td class="paramtype">const <a class="el" href="a00110.html#ac654d6319039a86546d235a236fc7cf6">bm::gap_word_t</a> *&nbsp;</td>
321
 
          <td class="paramname"> <em>gap_block</em>, </td>
322
 
        </tr>
323
 
        <tr>
324
 
          <td class="paramkey"></td>
325
 
          <td></td>
326
 
          <td class="paramtype">unsigned&nbsp;</td>
327
 
          <td class="paramname"> <em>arr_len</em>, </td>
328
 
        </tr>
329
 
        <tr>
330
 
          <td class="paramkey"></td>
331
 
          <td></td>
332
 
          <td class="paramtype"><a class="el" href="a00061.html">bm::encoder</a> &amp;&nbsp;</td>
333
 
          <td class="paramname"> <em>enc</em>, </td>
334
 
        </tr>
335
 
        <tr>
336
 
          <td class="paramkey"></td>
337
 
          <td></td>
338
 
          <td class="paramtype">bool&nbsp;</td>
339
 
          <td class="paramname"> <em>inverted</em> = <code>false</code></td><td>&nbsp;</td>
340
 
        </tr>
341
 
        <tr>
342
 
          <td></td>
343
 
          <td>)</td>
344
 
          <td></td><td></td><td><code> [inline, protected]</code></td>
345
 
        </tr>
346
 
      </table>
347
 
</div>
348
 
<div class="memdoc">
349
 
 
350
 
<p>Encode GAP block as delta-array with Elias Gamma coder. </p>
351
 
 
352
 
<p>Definition at line <a class="el" href="a00092_source.html#l00606">606</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
353
 
 
354
 
<p>References <a class="el" href="a00100_source.html#l00229">bm::bit_out&lt; TEncoder &gt;::gamma()</a>, <a class="el" href="a00100_source.html#l00611">bm::encoder::get_pos()</a>, <a class="el" href="a00100_source.html#l00544">bm::encoder::put_8()</a>, <a class="el" href="a00100_source.html#l00527">bm::encoder::put_prefixed_array_16()</a>, <a class="el" href="a00092_source.html#l00084">bm::set_block_arrgap</a>, <a class="el" href="a00092_source.html#l00087">bm::set_block_arrgap_egamma</a>, <a class="el" href="a00092_source.html#l00089">bm::set_block_arrgap_egamma_inv</a>, <a class="el" href="a00092_source.html#l00090">bm::set_block_arrgap_inv</a>, and <a class="el" href="a00100_source.html#l00619">bm::encoder::set_pos()</a>.</p>
355
 
 
356
 
<p>Referenced by <a class="el" href="a00092_source.html#l00653">bm::serializer&lt; BV &gt;::encode_gap_block()</a>, and <a class="el" href="a00092_source.html#l00758">bm::serializer&lt; BV &gt;::serialize()</a>.</p>
357
 
 
358
 
</div>
359
 
</div>
360
 
<a class="anchor" id="aa7eac0e670c3ff98404a5f1dcec1ef33"></a><!-- doxytag: member="bm::serializer::gamma_gap_block" ref="aa7eac0e670c3ff98404a5f1dcec1ef33" args="(bm::gap_word_t *gap_block, bm::encoder &amp;enc)" -->
361
 
<div class="memitem">
362
 
<div class="memproto">
363
 
<div class="memtemplate">
364
 
template&lt;class BV &gt; </div>
365
 
      <table class="memname">
366
 
        <tr>
367
 
          <td class="memname">void <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::gamma_gap_block </td>
368
 
          <td>(</td>
369
 
          <td class="paramtype"><a class="el" href="a00110.html#ac654d6319039a86546d235a236fc7cf6">bm::gap_word_t</a> *&nbsp;</td>
370
 
          <td class="paramname"> <em>gap_block</em>, </td>
371
 
        </tr>
372
 
        <tr>
373
 
          <td class="paramkey"></td>
374
 
          <td></td>
375
 
          <td class="paramtype"><a class="el" href="a00061.html">bm::encoder</a> &amp;&nbsp;</td>
376
 
          <td class="paramname"> <em>enc</em></td><td>&nbsp;</td>
377
 
        </tr>
378
 
        <tr>
379
 
          <td></td>
380
 
          <td>)</td>
381
 
          <td></td><td></td><td><code> [inline, protected]</code></td>
382
 
        </tr>
383
 
      </table>
384
 
</div>
385
 
<div class="memdoc">
386
 
 
387
 
<p>Encode GAP block with Elias Gamma coder. </p>
388
 
 
389
 
<p>Definition at line <a class="el" href="a00092_source.html#l00569">569</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
390
 
 
391
 
<p>References <a class="el" href="a00090_source.html#l00701">bm::for_each_dgap()</a>, <a class="el" href="a00090_source.html#l02122">bm::gap_length()</a>, <a class="el" href="a00100_source.html#l00611">bm::encoder::get_pos()</a>, <a class="el" href="a00100_source.html#l00554">bm::encoder::put_16()</a>, <a class="el" href="a00100_source.html#l00544">bm::encoder::put_8()</a>, <a class="el" href="a00092_source.html#l00080">bm::set_block_gap</a>, <a class="el" href="a00092_source.html#l00086">bm::set_block_gap_egamma</a>, and <a class="el" href="a00100_source.html#l00619">bm::encoder::set_pos()</a>.</p>
392
 
 
393
 
<p>Referenced by <a class="el" href="a00092_source.html#l00653">bm::serializer&lt; BV &gt;::encode_gap_block()</a>, and <a class="el" href="a00092_source.html#l00758">bm::serializer&lt; BV &gt;::serialize()</a>.</p>
394
 
 
395
 
</div>
396
 
</div>
397
 
<a class="anchor" id="a5b19026c2e928c639f09da4a4e1235ab"></a><!-- doxytag: member="bm::serializer::gap_length_serialization" ref="a5b19026c2e928c639f09da4a4e1235ab" args="(bool value)" -->
398
 
<div class="memitem">
399
 
<div class="memproto">
400
 
<div class="memtemplate">
401
 
template&lt;class BV &gt; </div>
402
 
      <table class="memname">
403
 
        <tr>
404
 
          <td class="memname">void <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::gap_length_serialization </td>
405
 
          <td>(</td>
406
 
          <td class="paramtype">bool&nbsp;</td>
407
 
          <td class="paramname"> <em>value</em></td>
408
 
          <td>&nbsp;)&nbsp;</td>
409
 
          <td><code> [inline]</code></td>
410
 
        </tr>
411
 
      </table>
412
 
</div>
413
 
<div class="memdoc">
414
 
 
415
 
<p>Set GAP length serialization (serializes GAP levels of the original vector). </p>
416
 
<dl><dt><b>Parameters:</b></dt><dd>
417
 
  <table border="0" cellspacing="2" cellpadding="0">
418
 
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>- when TRUE serialized vector includes GAP levels parameters </td></tr>
419
 
  </table>
420
 
  </dd>
421
 
</dl>
422
 
 
423
 
<p>Definition at line <a class="el" href="a00092_source.html#l00518">518</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
424
 
 
425
 
<p>Referenced by <a class="el" href="a00104_source.html#l00107">main()</a>, and <a class="el" href="a00092_source.html#l01028">bm::serialize()</a>.</p>
426
 
 
427
 
</div>
428
 
</div>
429
 
<a class="anchor" id="ada73fe9103470fc726968cd0e8dbe04f"></a><!-- doxytag: member="bm::serializer::get_compression_level" ref="ada73fe9103470fc726968cd0e8dbe04f" args="() const " -->
430
 
<div class="memitem">
431
 
<div class="memproto">
432
 
<div class="memtemplate">
433
 
template&lt;class BV &gt; </div>
434
 
      <table class="memname">
435
 
        <tr>
436
 
          <td class="memname">unsigned <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::get_compression_level </td>
437
 
          <td>(</td>
438
 
          <td class="paramname"></td>
439
 
          <td>&nbsp;)&nbsp;</td>
440
 
          <td> const<code> [inline]</code></td>
441
 
        </tr>
442
 
      </table>
443
 
</div>
444
 
<div class="memdoc">
445
 
 
446
 
<p>Get compression level. </p>
447
 
 
448
 
<p>Definition at line <a class="el" href="a00092_source.html#l00505">505</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
449
 
 
450
 
</div>
451
 
</div>
452
 
<a class="anchor" id="af747ada0a8f77d79d73b34443595f4d4"></a><!-- doxytag: member="bm::serializer::serialize" ref="af747ada0a8f77d79d73b34443595f4d4" args="(const BV &amp;bv, unsigned char *buf, unsigned buf_size)" -->
453
 
<div class="memitem">
454
 
<div class="memproto">
455
 
<div class="memtemplate">
456
 
template&lt;class BV &gt; </div>
457
 
      <table class="memname">
458
 
        <tr>
459
 
          <td class="memname">unsigned <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::serialize </td>
460
 
          <td>(</td>
461
 
          <td class="paramtype">const BV &amp;&nbsp;</td>
462
 
          <td class="paramname"> <em>bv</em>, </td>
463
 
        </tr>
464
 
        <tr>
465
 
          <td class="paramkey"></td>
466
 
          <td></td>
467
 
          <td class="paramtype">unsigned char *&nbsp;</td>
468
 
          <td class="paramname"> <em>buf</em>, </td>
469
 
        </tr>
470
 
        <tr>
471
 
          <td class="paramkey"></td>
472
 
          <td></td>
473
 
          <td class="paramtype">unsigned&nbsp;</td>
474
 
          <td class="paramname"> <em>buf_size</em></td><td>&nbsp;</td>
475
 
        </tr>
476
 
        <tr>
477
 
          <td></td>
478
 
          <td>)</td>
479
 
          <td></td><td></td><td><code> [inline]</code></td>
480
 
        </tr>
481
 
      </table>
482
 
</div>
483
 
<div class="memdoc">
484
 
 
485
 
<p>Bitvector serilization into memory block. </p>
486
 
<dl><dt><b>Parameters:</b></dt><dd>
487
 
  <table border="0" cellspacing="2" cellpadding="0">
488
 
    <tr><td valign="top"></td><td valign="top"><em>bv</em>&nbsp;</td><td>- input bitvector </td></tr>
489
 
    <tr><td valign="top"></td><td valign="top"><em>buf</em>&nbsp;</td><td>- out buffer (pre-allocated) No range checking is done in this method. It is responsibility of caller to allocate sufficient amount of memory using information from calc_stat() function.</td></tr>
490
 
    <tr><td valign="top"></td><td valign="top"><em>buf_size</em>&nbsp;</td><td>- size of the output buffer</td></tr>
491
 
  </table>
492
 
  </dd>
493
 
</dl>
494
 
<dl class="return"><dt><b>Returns:</b></dt><dd>Size of serialization block. </dd></dl>
495
 
<dl class="see"><dt><b>See also:</b></dt><dd>calc_stat </dd></dl>
496
 
 
497
 
<p>Definition at line <a class="el" href="a00092_source.html#l00758">758</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
498
 
 
499
 
<p>References <a class="el" href="a00090_source.html#l02569">bm::bit_block_calc_count_change()</a>, <a class="el" href="a00090_source.html#l04323">bm::bit_convert_to_arr()</a>, <a class="el" href="a00090_source.html#l02266">bm::bit_convert_to_gap()</a>, <a class="el" href="a00090_source.html#l03981">bm::bit_count_nonzero_size()</a>, <a class="el" href="a00090_source.html#l04059">bm::bit_find_in_block()</a>, <a class="el" href="a00089_source.html#l00047">BM_ASSERT</a>, <a class="el" href="a00089_source.html#l00094">BM_IS_GAP</a>, <a class="el" href="a00089_source.html#l00092">BMGAP_PTR</a>, <a class="el" href="a00092_source.html#l00706">bm::serializer&lt; BV &gt;::encode_bit_interval()</a>, <a class="el" href="a00092_source.html#l00653">bm::serializer&lt; BV &gt;::encode_gap_block()</a>, <a class="el" href="a00092_source.html#l00530">bm::serializer&lt; BV &gt;::encode_header()</a>, <a class="el" href="a00092_source.html#l00606">bm::serializer&lt; BV &gt;::gamma_gap_array()</a>, <a class="el" href="a00092_source.html#l00569">bm::serializer&lt; BV &gt;::gamma_gap_block()</a>, <a class="el" href="a00088_source.html#l00072">bm::gap_equiv_len</a>, <a class="el" href="a00088_source.html#l00071">bm::gap_max_bits</a>, <a class="el" href="a00100_source.html#l00554">bm::encoder::put_16()</a>, <a class="el" href="a00100_source.html#l00544">bm::encoder::put_8()</a>, <a class="el" href="a00100_source.html#l00516">bm::encoder::put_prefixed_array_32()</a>, <a class="el" href="a00092_source.html#l00105">SER_NEXT_GRP</a>, <a class="el" href="a00092_source.html#l00072">bm::set_block_16one</a>, <a class="el" href="a00092_source.html#l00071">bm::set_block_16zero</a>, <a class="el" href="a00092_source.html#l00068">bm::set_block_1one</a>, <a class="el" href="a00092_source.html#l00067">bm::set_block_1zero</a>, <a class="el" href="a00092_source.html#l00074">bm::set_block_32one</a>, <a class="el" href="a00092_source.html#l00073">bm::set_block_32zero</a>, <a class="el" href="a00092_source.html#l00070">bm::set_block_8one</a>, <a class="el" href="a00092_source.html#l00069">bm::set_block_8zero</a>, <a class="el" href="a00092_source.html#l00076">bm::set_block_aone</a>, <a class="el" href="a00092_source.html#l00075">bm::set_block_azero</a>, <a class="el" href="a00092_source.html#l00077">bm::set_block_bit</a>, <a class="el" href="a00092_source.html#l00085">bm::set_block_bit_1bit</a>, <a class="el" href="a00092_source.html#l00066">bm::set_block_end</a>, <a class="el" href="a00088_source.html#l00052">bm::set_block_size</a>, <a class="el" href="a00088_source.html#l00083">bm::set_total_blocks</a>, and <a class="el" href="a00100_source.html#l00603">bm::encoder::size()</a>.</p>
500
 
 
501
 
<p>Referenced by <a class="el" href="a00092_source.html#l01028">bm::serialize()</a>.</p>
502
 
 
503
 
</div>
504
 
</div>
505
 
<a class="anchor" id="ad433d790f07103d39c5f15a6caaf2823"></a><!-- doxytag: member="bm::serializer::set_compression_level" ref="ad433d790f07103d39c5f15a6caaf2823" args="(unsigned clevel)" -->
506
 
<div class="memitem">
507
 
<div class="memproto">
508
 
<div class="memtemplate">
509
 
template&lt;class BV &gt; </div>
510
 
      <table class="memname">
511
 
        <tr>
512
 
          <td class="memname">void <a class="el" href="a00080.html">bm::serializer</a>&lt; BV &gt;::set_compression_level </td>
513
 
          <td>(</td>
514
 
          <td class="paramtype">unsigned&nbsp;</td>
515
 
          <td class="paramname"> <em>clevel</em></td>
516
 
          <td>&nbsp;)&nbsp;</td>
517
 
          <td><code> [inline]</code></td>
518
 
        </tr>
519
 
      </table>
520
 
</div>
521
 
<div class="memdoc">
522
 
 
523
 
<p>Set compression level. </p>
524
 
<p>Higher compression takes more time to process.</p>
525
 
<dl><dt><b>Parameters:</b></dt><dd>
526
 
  <table border="0" cellspacing="2" cellpadding="0">
527
 
    <tr><td valign="top"></td><td valign="top"><em>clevel</em>&nbsp;</td><td>- compression level (0-4) </td></tr>
528
 
  </table>
529
 
  </dd>
530
 
</dl>
531
 
 
532
 
<p>Definition at line <a class="el" href="a00092_source.html#l00499">499</a> of file <a class="el" href="a00092_source.html">bmserial.h</a>.</p>
533
 
 
534
 
<p>Referenced by <a class="el" href="a00104_source.html#l00107">main()</a>, and <a class="el" href="a00092_source.html#l01028">bm::serialize()</a>.</p>
 
120
<a class="anchor" id="a31f8e1425e1563f1f5890b77f736f323"></a><!-- doxytag: member="bm::bvector::reference::flip" ref="a31f8e1425e1563f1f5890b77f736f323" args="()" -->
 
121
<div class="memitem">
 
122
<div class="memproto">
 
123
<div class="memtemplate">
 
124
template&lt;class Alloc, class MS&gt; </div>
 
125
      <table class="memname">
 
126
        <tr>
 
127
          <td class="memname"><a class="el" href="a00080.html">reference</a>&amp; <a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::flip </td>
 
128
          <td>(</td>
 
129
          <td class="paramname"></td>
 
130
          <td>&nbsp;)&nbsp;</td>
 
131
          <td><code> [inline]</code></td>
 
132
        </tr>
 
133
      </table>
 
134
</div>
 
135
<div class="memdoc">
 
136
<p>Negates the bit value </p>
 
137
 
 
138
<p>Definition at line <a class="el" href="a00087_source.html#l00214">214</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
139
 
 
140
</div>
 
141
</div>
 
142
<a class="anchor" id="a4d531a670ed0e8cfca01342fe02f030e"></a><!-- doxytag: member="bm::bvector::reference::operator bool" ref="a4d531a670ed0e8cfca01342fe02f030e" args="() const " -->
 
143
<div class="memitem">
 
144
<div class="memproto">
 
145
<div class="memtemplate">
 
146
template&lt;class Alloc, class MS&gt; </div>
 
147
      <table class="memname">
 
148
        <tr>
 
149
          <td class="memname"><a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::operator bool </td>
 
150
          <td>(</td>
 
151
          <td class="paramname"></td>
 
152
          <td>&nbsp;)&nbsp;</td>
 
153
          <td> const<code> [inline]</code></td>
 
154
        </tr>
 
155
      </table>
 
156
</div>
 
157
<div class="memdoc">
 
158
 
 
159
<p>Definition at line <a class="el" href="a00087_source.html#l00155">155</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
160
 
 
161
</div>
 
162
</div>
 
163
<a class="anchor" id="aa214fa361c24c57c9fd4d26441ff6c12"></a><!-- doxytag: member="bm::bvector::reference::operator!" ref="aa214fa361c24c57c9fd4d26441ff6c12" args="() const " -->
 
164
<div class="memitem">
 
165
<div class="memproto">
 
166
<div class="memtemplate">
 
167
template&lt;class Alloc, class MS&gt; </div>
 
168
      <table class="memname">
 
169
        <tr>
 
170
          <td class="memname">bool <a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::operator! </td>
 
171
          <td>(</td>
 
172
          <td class="paramname"></td>
 
173
          <td>&nbsp;)&nbsp;</td>
 
174
          <td> const<code> [inline]</code></td>
 
175
        </tr>
 
176
      </table>
 
177
</div>
 
178
<div class="memdoc">
 
179
<p>Logical Not operator </p>
 
180
 
 
181
<p>Definition at line <a class="el" href="a00087_source.html#l00202">202</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
182
 
 
183
</div>
 
184
</div>
 
185
<a class="anchor" id="a78514f588110835ecd21f3c8737b6a3f"></a><!-- doxytag: member="bm::bvector::reference::operator&amp;=" ref="a78514f588110835ecd21f3c8737b6a3f" args="(bool value) const " -->
 
186
<div class="memitem">
 
187
<div class="memproto">
 
188
<div class="memtemplate">
 
189
template&lt;class Alloc, class MS&gt; </div>
 
190
      <table class="memname">
 
191
        <tr>
 
192
          <td class="memname">const <a class="el" href="a00080.html">reference</a>&amp; <a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::operator&amp;= </td>
 
193
          <td>(</td>
 
194
          <td class="paramtype">bool&nbsp;</td>
 
195
          <td class="paramname"> <em>value</em></td>
 
196
          <td>&nbsp;)&nbsp;</td>
 
197
          <td> const<code> [inline]</code></td>
 
198
        </tr>
 
199
      </table>
 
200
</div>
 
201
<div class="memdoc">
 
202
<p>Bitwise AND. Performs operation: bit = bit AND value </p>
 
203
 
 
204
<p>Definition at line <a class="el" href="a00087_source.html#l00178">178</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
205
 
 
206
</div>
 
207
</div>
 
208
<a class="anchor" id="ae7fd4a0de8fe3d984322e8a690feeb5a"></a><!-- doxytag: member="bm::bvector::reference::operator=" ref="ae7fd4a0de8fe3d984322e8a690feeb5a" args="(bool value) const " -->
 
209
<div class="memitem">
 
210
<div class="memproto">
 
211
<div class="memtemplate">
 
212
template&lt;class Alloc, class MS&gt; </div>
 
213
      <table class="memname">
 
214
        <tr>
 
215
          <td class="memname">const <a class="el" href="a00080.html">reference</a>&amp; <a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::operator= </td>
 
216
          <td>(</td>
 
217
          <td class="paramtype">bool&nbsp;</td>
 
218
          <td class="paramname"> <em>value</em></td>
 
219
          <td>&nbsp;)&nbsp;</td>
 
220
          <td> const<code> [inline]</code></td>
 
221
        </tr>
 
222
      </table>
 
223
</div>
 
224
<div class="memdoc">
 
225
 
 
226
<p>Definition at line <a class="el" href="a00087_source.html#l00166">166</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
227
 
 
228
</div>
 
229
</div>
 
230
<a class="anchor" id="ac597a766c4942da598682c4917ee41c6"></a><!-- doxytag: member="bm::bvector::reference::operator=" ref="ac597a766c4942da598682c4917ee41c6" args="(const reference &amp;ref) const " -->
 
231
<div class="memitem">
 
232
<div class="memproto">
 
233
<div class="memtemplate">
 
234
template&lt;class Alloc, class MS&gt; </div>
 
235
      <table class="memname">
 
236
        <tr>
 
237
          <td class="memname">const <a class="el" href="a00080.html">reference</a>&amp; <a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::operator= </td>
 
238
          <td>(</td>
 
239
          <td class="paramtype">const <a class="el" href="a00080.html">reference</a> &amp;&nbsp;</td>
 
240
          <td class="paramname"> <em>ref</em></td>
 
241
          <td>&nbsp;)&nbsp;</td>
 
242
          <td> const<code> [inline]</code></td>
 
243
        </tr>
 
244
      </table>
 
245
</div>
 
246
<div class="memdoc">
 
247
 
 
248
<p>Definition at line <a class="el" href="a00087_source.html#l00160">160</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
249
 
 
250
</div>
 
251
</div>
 
252
<a class="anchor" id="ab761552f565e9ecfe263fd8325d50852"></a><!-- doxytag: member="bm::bvector::reference::operator==" ref="ab761552f565e9ecfe263fd8325d50852" args="(const reference &amp;ref) const " -->
 
253
<div class="memitem">
 
254
<div class="memproto">
 
255
<div class="memtemplate">
 
256
template&lt;class Alloc, class MS&gt; </div>
 
257
      <table class="memname">
 
258
        <tr>
 
259
          <td class="memname">bool <a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::operator== </td>
 
260
          <td>(</td>
 
261
          <td class="paramtype">const <a class="el" href="a00080.html">reference</a> &amp;&nbsp;</td>
 
262
          <td class="paramname"> <em>ref</em></td>
 
263
          <td>&nbsp;)&nbsp;</td>
 
264
          <td> const<code> [inline]</code></td>
 
265
        </tr>
 
266
      </table>
 
267
</div>
 
268
<div class="memdoc">
 
269
 
 
270
<p>Definition at line <a class="el" href="a00087_source.html#l00172">172</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
271
 
 
272
</div>
 
273
</div>
 
274
<a class="anchor" id="a94e3b8c46d1f83c5999c8eaf426b8e9b"></a><!-- doxytag: member="bm::bvector::reference::operator^=" ref="a94e3b8c46d1f83c5999c8eaf426b8e9b" args="(bool value) const " -->
 
275
<div class="memitem">
 
276
<div class="memproto">
 
277
<div class="memtemplate">
 
278
template&lt;class Alloc, class MS&gt; </div>
 
279
      <table class="memname">
 
280
        <tr>
 
281
          <td class="memname">const <a class="el" href="a00080.html">reference</a>&amp; <a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::operator^= </td>
 
282
          <td>(</td>
 
283
          <td class="paramtype">bool&nbsp;</td>
 
284
          <td class="paramname"> <em>value</em></td>
 
285
          <td>&nbsp;)&nbsp;</td>
 
286
          <td> const<code> [inline]</code></td>
 
287
        </tr>
 
288
      </table>
 
289
</div>
 
290
<div class="memdoc">
 
291
<p>Bitwise exclusive-OR (XOR). Performs operation: bit = bit XOR value </p>
 
292
 
 
293
<p>Definition at line <a class="el" href="a00087_source.html#l00195">195</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
294
 
 
295
</div>
 
296
</div>
 
297
<a class="anchor" id="acbf8b97f7b52f1c9b81a1d9129986cff"></a><!-- doxytag: member="bm::bvector::reference::operator|=" ref="acbf8b97f7b52f1c9b81a1d9129986cff" args="(bool value) const " -->
 
298
<div class="memitem">
 
299
<div class="memproto">
 
300
<div class="memtemplate">
 
301
template&lt;class Alloc, class MS&gt; </div>
 
302
      <table class="memname">
 
303
        <tr>
 
304
          <td class="memname">const <a class="el" href="a00080.html">reference</a>&amp; <a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::operator|= </td>
 
305
          <td>(</td>
 
306
          <td class="paramtype">bool&nbsp;</td>
 
307
          <td class="paramname"> <em>value</em></td>
 
308
          <td>&nbsp;)&nbsp;</td>
 
309
          <td> const<code> [inline]</code></td>
 
310
        </tr>
 
311
      </table>
 
312
</div>
 
313
<div class="memdoc">
 
314
<p>Bitwise OR. Performs operation: bit = bit OR value </p>
 
315
 
 
316
<p>Definition at line <a class="el" href="a00087_source.html#l00185">185</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
 
317
 
 
318
</div>
 
319
</div>
 
320
<a class="anchor" id="a70357e67d8022147971ad970a80108d0"></a><!-- doxytag: member="bm::bvector::reference::operator~" ref="a70357e67d8022147971ad970a80108d0" args="() const " -->
 
321
<div class="memitem">
 
322
<div class="memproto">
 
323
<div class="memtemplate">
 
324
template&lt;class Alloc, class MS&gt; </div>
 
325
      <table class="memname">
 
326
        <tr>
 
327
          <td class="memname">bool <a class="el" href="a00044.html">bm::bvector</a>&lt; Alloc, MS &gt;::reference::operator~ </td>
 
328
          <td>(</td>
 
329
          <td class="paramname"></td>
 
330
          <td>&nbsp;)&nbsp;</td>
 
331
          <td> const<code> [inline]</code></td>
 
332
        </tr>
 
333
      </table>
 
334
</div>
 
335
<div class="memdoc">
 
336
<p>Bit Not operator </p>
 
337
 
 
338
<p>Definition at line <a class="el" href="a00087_source.html#l00208">208</a> of file <a class="el" href="a00087_source.html">bm.h</a>.</p>
535
339
 
536
340
</div>
537
341
</div>
538
342
<hr/>The documentation for this class was generated from the following file:<ul>
539
 
<li><a class="el" href="a00092_source.html">bmserial.h</a></li>
 
343
<li><a class="el" href="a00087_source.html">bm.h</a></li>
540
344
</ul>
541
345
</div>
542
 
<hr size="1"/><address style="text-align: right;"><small>Generated on Sun Nov 22 10:49:48 2009 for BitMagic by&nbsp;
 
346
<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Jan 8 20:09:20 2010 for BitMagic by&nbsp;
543
347
<a href="http://www.doxygen.org/index.html">
544
348
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
545
349
</body>