27
27
<li><a href="functions.html"><span>Data Fields</span></a></li>
30
<div class="navpath"><a class="el" href="a00116.html">bm</a>::<a class="el" href="a00044.html">bvector</a>::<a class="el" href="a00049.html">counted_enumerator</a>
30
<div class="navpath"><a class="el" href="a00115.html">bm</a>::<a class="el" href="a00049.html">d_copy_func</a>
33
33
<div class="contents">
34
<h1>bm::bvector< Alloc, MS >::counted_enumerator Class Reference<br/>
36
[<a class="el" href="a00119.html">The Main bvector<> Group</a>]</small>
37
</h1><!-- doxytag: class="bm::bvector::counted_enumerator" --><!-- doxytag: inherits="bm::bvector::enumerator" -->
38
<p>Constant input iterator designed to enumerate "ON" bits <a class="el" href="a00049.html" title="Constant input iterator designed to enumerate "ON" bits counted_enumerator...">counted_enumerator</a> keeps bitcount, ie number of ON bits starting from the position 0 in the bit string up to the currently enumerated bit.
34
<h1>bm::d_copy_func< T > Struct Template Reference</h1><!-- doxytag: class="bm::d_copy_func" -->
39
36
<a href="#_details">More...</a></p>
41
<p><code>#include <<a class="el" href="a00088_source.html">bm.h</a>></code></p>
42
<div class="dynheader">
43
Inheritance diagram for bm::bvector< Alloc, MS >::counted_enumerator:</div>
44
<div class="dynsection">
45
<div class="center"><img src="a00238.png" border="0" usemap="#bm_1_1bvector_3_01Alloc_00_01MS_01_4_1_1counted__enumerator_inherit__map" alt="Inheritance graph"/></div>
46
<map name="bm_1_1bvector_3_01Alloc_00_01MS_01_4_1_1counted__enumerator_inherit__map" id="bm_1_1bvector_3_01Alloc_00_01MS_01_4_1_1counted__enumerator_inherit__map">
47
<area shape="rect" href="a00063.html" title="Constant input iterator designed to enumerate "ON" bits." alt="" coords="32,83,275,112"/><area shape="rect" href="a00072.html" title="Base class for all iterators." alt="" coords="27,5,280,35"/></map>
48
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
49
<div class="dynheader">
50
Collaboration diagram for bm::bvector< Alloc, MS >::counted_enumerator:</div>
51
<div class="dynsection">
52
<div class="center"><img src="a00239.png" border="0" usemap="#bm_1_1bvector_3_01Alloc_00_01MS_01_4_1_1counted__enumerator_coll__map" alt="Collaboration graph"/></div>
53
<map name="bm_1_1bvector_3_01Alloc_00_01MS_01_4_1_1counted__enumerator_coll__map" id="bm_1_1bvector_3_01Alloc_00_01MS_01_4_1_1counted__enumerator_coll__map">
54
<area shape="rect" href="a00063.html" title="Constant input iterator designed to enumerate "ON" bits." alt="" coords="1167,32,1409,61"/><area shape="rect" href="a00072.html" title="Base class for all iterators." alt="" coords="860,32,1113,61"/><area shape="rect" href="a00040.html" title="bm::bvector\< Alloc, MS \>::iterator_base::block_descr" alt="" coords="431,32,761,61"/><area shape="rect" href="a00060.html" title="Information about current DGAP block." alt="" coords="15,5,343,35"/><area shape="rect" href="a00035.html" title="Information about current bitblock." alt="" coords="5,59,352,88"/></map>
55
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
38
<p><code>#include <<a class="el" href="a00093_source.html">bmfunc.h</a>></code></p>
56
39
<table border="0" cellpadding="0" cellspacing="0">
57
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
58
<tr><td class="memItemLeft" align="right" valign="top">typedef std::input_iterator_tag </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#a171919f2a88ab74fcea53f9f75225712">iterator_category</a></td></tr>
59
40
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
60
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#a0a6f5329ef42122de9fcc754c0318cb6">counted_enumerator</a> ()</td></tr>
61
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#a4b0d8b4e7b7268707355b813434bcfcb">counted_enumerator</a> (const <a class="el" href="a00063.html">enumerator</a> &en)</td></tr>
62
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00049.html">counted_enumerator</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#a9e2badd4602a744f1df04de7d9249314">operator=</a> (const <a class="el" href="a00063.html">enumerator</a> &en)</td></tr>
63
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00049.html">counted_enumerator</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#a65e58d9cb5ad45c89502c50e346c0f70">operator++</a> ()</td></tr>
64
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00049.html">counted_enumerator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#a91b38c1ed0a8c913684ad02bcfd67b84">operator++</a> (int)</td></tr>
65
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00116.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#a61abf2ecf53823d347ea53adb3a8be4a">count</a> () const </td></tr>
66
<tr><td class="mdescLeft"> </td><td class="mdescRight">Number of bits ON starting from the . <a href="#a61abf2ecf53823d347ea53adb3a8be4a"></a><br/></td></tr>
41
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#a07d1323a66a8e3c2cc0e515c379466c2">d_copy_func</a> (T *dg_buf)</td></tr>
42
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#a1afd038e81a03293793a28d026fca1c5">operator()</a> (T dgap)</td></tr>
43
<tr><td colspan="2"><h2>Data Fields</h2></td></tr>
44
<tr><td class="memItemLeft" align="right" valign="top">T * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00049.html#aef953bbffa1f6ef09a9d4321a3c69bc7">dgap_buf_</a></td></tr>
68
46
<hr/><a name="_details"></a><h2>Detailed Description</h2>
69
<h3>template<class Alloc, class MS><br/>
70
class bm::bvector< Alloc, MS >::counted_enumerator</h3>
72
<p>Constant input iterator designed to enumerate "ON" bits <a class="el" href="a00049.html" title="Constant input iterator designed to enumerate "ON" bits counted_enumerator...">counted_enumerator</a> keeps bitcount, ie number of ON bits starting from the position 0 in the bit string up to the currently enumerated bit. </p>
73
<p>When increment operator called current position is increased by 1. </p>
75
<p>Definition at line <a class="el" href="a00088_source.html#l00733">733</a> of file <a class="el" href="a00088_source.html">bm.h</a>.</p>
76
<hr/><h2>Member Typedef Documentation</h2>
77
<a class="anchor" id="a171919f2a88ab74fcea53f9f75225712"></a><!-- doxytag: member="bm::bvector::counted_enumerator::iterator_category" ref="a171919f2a88ab74fcea53f9f75225712" args="" -->
79
<div class="memproto">
80
<div class="memtemplate">
81
template<class Alloc, class MS> </div>
82
<table class="memname">
84
<td class="memname">typedef std::input_iterator_tag <a class="el" href="a00044.html">bm::bvector</a>< Alloc, MS >::<a class="el" href="a00049.html#a171919f2a88ab74fcea53f9f75225712">counted_enumerator::iterator_category</a></td>
90
<p>Reimplemented from <a class="el" href="a00063.html#a0af72b4644bc1148f549d21a00330210">bm::bvector< Alloc, MS >::enumerator</a>.</p>
92
<p>Definition at line <a class="el" href="a00088_source.html#l00737">737</a> of file <a class="el" href="a00088_source.html">bm.h</a>.</p>
47
<h3>template<typename T><br/>
48
struct bm::d_copy_func< T ></h3>
50
<p>d-Gap copy functor </p>
52
<p>Definition at line <a class="el" href="a00093_source.html#l00780">780</a> of file <a class="el" href="a00093_source.html">bmfunc.h</a>.</p>
96
53
<hr/><h2>Constructor & Destructor Documentation</h2>
97
<a class="anchor" id="a0a6f5329ef42122de9fcc754c0318cb6"></a><!-- doxytag: member="bm::bvector::counted_enumerator::counted_enumerator" ref="a0a6f5329ef42122de9fcc754c0318cb6" args="()" -->
99
<div class="memproto">
100
<div class="memtemplate">
101
template<class Alloc, class MS> </div>
102
<table class="memname">
104
<td class="memname"><a class="el" href="a00044.html">bm::bvector</a>< Alloc, MS >::counted_enumerator::counted_enumerator </td>
106
<td class="paramname"></td>
107
<td> ) </td>
108
<td><code> [inline]</code></td>
114
<p>Definition at line <a class="el" href="a00088_source.html#l00739">739</a> of file <a class="el" href="a00088_source.html">bm.h</a>.</p>
118
<a class="anchor" id="a4b0d8b4e7b7268707355b813434bcfcb"></a><!-- doxytag: member="bm::bvector::counted_enumerator::counted_enumerator" ref="a4b0d8b4e7b7268707355b813434bcfcb" args="(const enumerator &en)" -->
119
<div class="memitem">
120
<div class="memproto">
121
<div class="memtemplate">
122
template<class Alloc, class MS> </div>
123
<table class="memname">
125
<td class="memname"><a class="el" href="a00044.html">bm::bvector</a>< Alloc, MS >::counted_enumerator::counted_enumerator </td>
127
<td class="paramtype">const <a class="el" href="a00063.html">enumerator</a> & </td>
128
<td class="paramname"> <em>en</em></td>
129
<td> ) </td>
130
<td><code> [inline]</code></td>
136
<p>Definition at line <a class="el" href="a00088_source.html#l00741">741</a> of file <a class="el" href="a00088_source.html">bm.h</a>.</p>
138
<p>References <a class="el" href="a00088_source.html#l00272">bm::bvector< Alloc, MS >::iterator_base::valid()</a>.</p>
54
<a class="anchor" id="a07d1323a66a8e3c2cc0e515c379466c2"></a><!-- doxytag: member="bm::d_copy_func::d_copy_func" ref="a07d1323a66a8e3c2cc0e515c379466c2" args="(T *dg_buf)" -->
56
<div class="memproto">
57
<div class="memtemplate">
58
template<typename T> </div>
59
<table class="memname">
61
<td class="memname"><a class="el" href="a00049.html">bm::d_copy_func</a>< T >::<a class="el" href="a00049.html">d_copy_func</a> </td>
63
<td class="paramtype">T * </td>
64
<td class="paramname"> <em>dg_buf</em></td>
65
<td> ) </td>
66
<td><code> [inline]</code></td>
72
<p>Definition at line <a class="el" href="a00093_source.html#l00782">782</a> of file <a class="el" href="a00093_source.html">bmfunc.h</a>.</p>
142
76
<hr/><h2>Member Function Documentation</h2>
143
<a class="anchor" id="a61abf2ecf53823d347ea53adb3a8be4a"></a><!-- doxytag: member="bm::bvector::counted_enumerator::count" ref="a61abf2ecf53823d347ea53adb3a8be4a" args="() const " -->
144
<div class="memitem">
145
<div class="memproto">
146
<div class="memtemplate">
147
template<class Alloc, class MS> </div>
148
<table class="memname">
150
<td class="memname"><a class="el" href="a00116.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a> <a class="el" href="a00044.html">bm::bvector</a>< Alloc, MS >::counted_enumerator::count </td>
152
<td class="paramname"></td>
153
<td> ) </td>
154
<td> const<code> [inline]</code></td>
160
<p>Number of bits ON starting from the . </p>
161
<p>Method returns number of ON bits fromn the bit 0 to the current bit For the first bit in bitvector it is 1, for the second 2 </p>
163
<p>Definition at line <a class="el" href="a00088_source.html#l00779">779</a> of file <a class="el" href="a00088_source.html">bm.h</a>.</p>
167
<a class="anchor" id="a91b38c1ed0a8c913684ad02bcfd67b84"></a><!-- doxytag: member="bm::bvector::counted_enumerator::operator++" ref="a91b38c1ed0a8c913684ad02bcfd67b84" args="(int)" -->
168
<div class="memitem">
169
<div class="memproto">
170
<div class="memtemplate">
171
template<class Alloc, class MS> </div>
172
<table class="memname">
174
<td class="memname"><a class="el" href="a00049.html">counted_enumerator</a> <a class="el" href="a00044.html">bm::bvector</a>< Alloc, MS >::counted_enumerator::operator++ </td>
176
<td class="paramtype">int </td>
177
<td class="paramname"></td>
178
<td> ) </td>
179
<td><code> [inline]</code></td>
185
<p>Reimplemented from <a class="el" href="a00063.html#a1237d3258c73d41e93159063fb2708a0">bm::bvector< Alloc, MS >::enumerator</a>.</p>
187
<p>Definition at line <a class="el" href="a00088_source.html#l00765">765</a> of file <a class="el" href="a00088_source.html">bm.h</a>.</p>
189
<p>References <a class="el" href="a00088_source.html#l00500">bm::bvector< Alloc, MS >::enumerator::go_up()</a>, and <a class="el" href="a00088_source.html#l00272">bm::bvector< Alloc, MS >::iterator_base::valid()</a>.</p>
193
<a class="anchor" id="a65e58d9cb5ad45c89502c50e346c0f70"></a><!-- doxytag: member="bm::bvector::counted_enumerator::operator++" ref="a65e58d9cb5ad45c89502c50e346c0f70" args="()" -->
194
<div class="memitem">
195
<div class="memproto">
196
<div class="memtemplate">
197
template<class Alloc, class MS> </div>
198
<table class="memname">
200
<td class="memname"><a class="el" href="a00049.html">counted_enumerator</a>& <a class="el" href="a00044.html">bm::bvector</a>< Alloc, MS >::counted_enumerator::operator++ </td>
202
<td class="paramname"></td>
203
<td> ) </td>
204
<td><code> [inline]</code></td>
210
<p>Reimplemented from <a class="el" href="a00063.html#aab2b31ecf11e614cf2de6eab71d92512">bm::bvector< Alloc, MS >::enumerator</a>.</p>
212
<p>Definition at line <a class="el" href="a00088_source.html#l00757">757</a> of file <a class="el" href="a00088_source.html">bm.h</a>.</p>
214
<p>References <a class="el" href="a00088_source.html#l00500">bm::bvector< Alloc, MS >::enumerator::go_up()</a>, and <a class="el" href="a00088_source.html#l00272">bm::bvector< Alloc, MS >::iterator_base::valid()</a>.</p>
218
<a class="anchor" id="a9e2badd4602a744f1df04de7d9249314"></a><!-- doxytag: member="bm::bvector::counted_enumerator::operator=" ref="a9e2badd4602a744f1df04de7d9249314" args="(const enumerator &en)" -->
219
<div class="memitem">
220
<div class="memproto">
221
<div class="memtemplate">
222
template<class Alloc, class MS> </div>
223
<table class="memname">
225
<td class="memname"><a class="el" href="a00049.html">counted_enumerator</a>& <a class="el" href="a00044.html">bm::bvector</a>< Alloc, MS >::counted_enumerator::operator= </td>
227
<td class="paramtype">const <a class="el" href="a00063.html">enumerator</a> & </td>
228
<td class="paramname"> <em>en</em></td>
229
<td> ) </td>
230
<td><code> [inline]</code></td>
236
<p>Definition at line <a class="el" href="a00088_source.html#l00748">748</a> of file <a class="el" href="a00088_source.html">bm.h</a>.</p>
238
<p>References <a class="el" href="a00088_source.html#l00272">bm::bvector< Alloc, MS >::iterator_base::valid()</a>.</p>
242
<hr/>The documentation for this class was generated from the following file:<ul>
243
<li><a class="el" href="a00088_source.html">bm.h</a></li>
77
<a class="anchor" id="a1afd038e81a03293793a28d026fca1c5"></a><!-- doxytag: member="bm::d_copy_func::operator()" ref="a1afd038e81a03293793a28d026fca1c5" args="(T dgap)" -->
79
<div class="memproto">
80
<div class="memtemplate">
81
template<typename T> </div>
82
<table class="memname">
84
<td class="memname">void <a class="el" href="a00049.html">bm::d_copy_func</a>< T >::operator() </td>
86
<td class="paramtype">T </td>
87
<td class="paramname"> <em>dgap</em></td>
88
<td> ) </td>
89
<td><code> [inline]</code></td>
95
<p>Definition at line <a class="el" href="a00093_source.html#l00783">783</a> of file <a class="el" href="a00093_source.html">bmfunc.h</a>.</p>
97
<p>References <a class="el" href="a00093_source.html#l00785">bm::d_copy_func< T >::dgap_buf_</a>.</p>
101
<hr/><h2>Field Documentation</h2>
102
<a class="anchor" id="aef953bbffa1f6ef09a9d4321a3c69bc7"></a><!-- doxytag: member="bm::d_copy_func::dgap_buf_" ref="aef953bbffa1f6ef09a9d4321a3c69bc7" args="" -->
103
<div class="memitem">
104
<div class="memproto">
105
<div class="memtemplate">
106
template<typename T> </div>
107
<table class="memname">
109
<td class="memname">T* <a class="el" href="a00049.html">bm::d_copy_func</a>< T >::<a class="el" href="a00049.html#aef953bbffa1f6ef09a9d4321a3c69bc7">dgap_buf_</a></td>
115
<p>Definition at line <a class="el" href="a00093_source.html#l00785">785</a> of file <a class="el" href="a00093_source.html">bmfunc.h</a>.</p>
117
<p>Referenced by <a class="el" href="a00093_source.html#l00802">bm::gap_2_dgap()</a>, and <a class="el" href="a00093_source.html#l00783">bm::d_copy_func< T >::operator()()</a>.</p>
121
<hr/>The documentation for this struct was generated from the following file:<ul>
122
<li><a class="el" href="a00093_source.html">bmfunc.h</a></li>
246
<hr size="1"/><address style="text-align: right;"><small>Generated on Tue Mar 23 20:48:12 2010 for BitMagic by
125
<hr size="1"/><address style="text-align: right;"><small>Generated on Sun Apr 25 09:37:45 2010 for BitMagic by
247
126
<a href="http://www.doxygen.org/index.html">
248
127
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>