Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals | Examples

bm::bvector< Alloc, MS >::enumerator Class Reference
[The Main bvector<> Group]

Constant input iterator designed to enumerate "ON" bits. More...

#include <bm.h>

Inheritance diagram for bm::bvector< Alloc, MS >::enumerator:

Inheritance graph
[legend]
Collaboration diagram for bm::bvector< Alloc, MS >::enumerator:

Collaboration graph
[legend]

Public Types

typedef std::input_iterator_tag iterator_category
typedef unsigned value_type
typedef unsigned difference_type
typedef unsigned * pointer
typedef unsigned & reference

Public Member Functions

 enumerator ()
 enumerator (const bvector< Alloc, MS > *bvect, int position)
bm::id_t operator * () const
enumeratoroperator++ ()
enumerator operator++ (int)
void go_first ()
enumeratorgo_up ()

Detailed Description

template<class Alloc, class MS>
class bm::bvector< Alloc, MS >::enumerator

Constant input iterator designed to enumerate "ON" bits.

Definition at line 389 of file bm.h.


Member Typedef Documentation

template<class Alloc, class MS>
typedef unsigned bm::bvector< Alloc, MS >::enumerator::difference_type
 

Definition at line 396 of file bm.h.

template<class Alloc, class MS>
typedef std::input_iterator_tag bm::bvector< Alloc, MS >::enumerator::iterator_category
 

Reimplemented in bm::bvector< Alloc, MS >::counted_enumerator.

Definition at line 393 of file bm.h.

template<class Alloc, class MS>
typedef unsigned* bm::bvector< Alloc, MS >::enumerator::pointer
 

Definition at line 397 of file bm.h.

template<class Alloc, class MS>
typedef unsigned& bm::bvector< Alloc, MS >::enumerator::reference
 

Definition at line 398 of file bm.h.

template<class Alloc, class MS>
typedef unsigned bm::bvector< Alloc, MS >::enumerator::value_type
 

Definition at line 395 of file bm.h.


Constructor & Destructor Documentation

template<class Alloc, class MS>
bm::bvector< Alloc, MS >::enumerator::enumerator  )  [inline]
 

Definition at line 401 of file bm.h.

template<class Alloc, class MS>
bm::bvector< Alloc, MS >::enumerator::enumerator const bvector< Alloc, MS > *  bvect,
int  position
[inline]
 

Definition at line 402 of file bm.h.

References bm::bvector< Alloc, MS >::enumerator::go_first(), and bm::bvector< Alloc, MS >::iterator_base::invalidate().


Member Function Documentation

template<class Alloc, class MS>
void bm::bvector< Alloc, MS >::enumerator::go_first  )  [inline]
 

Definition at line 434 of file bm.h.

References bm::bits_in_block, BM_ASSERT, BM_IS_GAP, and bm::bvector< Alloc, MS >::iterator_base::invalidate().

Referenced by bm::bvector< Alloc, MS >::enumerator::enumerator().

template<class Alloc, class MS>
enumerator& bm::bvector< Alloc, MS >::enumerator::go_up  )  [inline]
 

Definition at line 499 of file bm.h.

References bm::bvector< Alloc, MS >::iterator_base::block_descr::bit_, bm::bit_list(), BM_ASSERT, BM_IS_GAP, bm::bvector< Alloc, MS >::iterator_base::block_descr::gap_, and bm::bvector< Alloc, MS >::iterator_base::invalidate().

Referenced by bm::bvector< Alloc, MS >::counted_enumerator::operator++(), and bm::bvector< Alloc, MS >::enumerator::operator++().

template<class Alloc, class MS>
bm::id_t bm::bvector< Alloc, MS >::enumerator::operator *  )  const [inline]
 

Definition at line 416 of file bm.h.

template<class Alloc, class MS>
enumerator bm::bvector< Alloc, MS >::enumerator::operator++ int   )  [inline]
 

Reimplemented in bm::bvector< Alloc, MS >::counted_enumerator.

Definition at line 426 of file bm.h.

References bm::bvector< Alloc, MS >::enumerator::go_up().

template<class Alloc, class MS>
enumerator& bm::bvector< Alloc, MS >::enumerator::operator++  )  [inline]
 

Reimplemented in bm::bvector< Alloc, MS >::counted_enumerator.

Definition at line 421 of file bm.h.

References bm::bvector< Alloc, MS >::enumerator::go_up().


The documentation for this class was generated from the following file:
Generated on Thu Apr 20 13:29:14 2006 for BitMagic by  doxygen 1.4.1