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

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

Output iterator iterator designed to set "ON" bits based on input sequence of integers (bit indeces). More...

#include <bm.h>


Public Types

typedef std::output_iterator_tag iterator_category
typedef unsigned value_type
typedef void difference_type
typedef void pointer
typedef void reference

Public Member Functions

 insert_iterator (bvector< Alloc, MS > &bvect)
insert_iteratoroperator= (bm::id_t n)
insert_iteratoroperator * ()
insert_iteratoroperator++ ()
insert_iteratoroperator++ (int)

Protected Attributes

bm::bvector< Alloc, MS > & bvect_
bm::id_t max_bit_


Detailed Description

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

Output iterator iterator designed to set "ON" bits based on input sequence of integers (bit indeces).

STL container can be converted to bvector using this iterator Insert iterator guarantees the vector will be dynamically resized (set_bit does not do that).

Note:
If you have many bits to set it is a good idea to use output iterator instead of explicitly calling set, because iterator may implement some performance specific tricks to make sure bulk insert is fast.

Definition at line 327 of file bm.h.


Member Typedef Documentation

template<class Alloc, class MS>
typedef void bm::bvector< Alloc, MS >::insert_iterator::difference_type
 

Definition at line 334 of file bm.h.

template<class Alloc, class MS>
typedef std::output_iterator_tag bm::bvector< Alloc, MS >::insert_iterator::iterator_category
 

Definition at line 331 of file bm.h.

template<class Alloc, class MS>
typedef void bm::bvector< Alloc, MS >::insert_iterator::pointer
 

Definition at line 335 of file bm.h.

template<class Alloc, class MS>
typedef void bm::bvector< Alloc, MS >::insert_iterator::reference
 

Definition at line 336 of file bm.h.

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

Definition at line 333 of file bm.h.


Constructor & Destructor Documentation

template<class Alloc, class MS>
bm::bvector< Alloc, MS >::insert_iterator::insert_iterator bvector< Alloc, MS > &  bvect  )  [inline]
 

Definition at line 338 of file bm.h.

References bm::bvector< Alloc, MS >::insert_iterator::bvect_, and bm::bvector< Alloc, MS >::insert_iterator::max_bit_.


Member Function Documentation

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

Returns *this without doing anything (no-op)

Definition at line 362 of file bm.h.

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

Returns *this. This iterator does not move (no-op)

Definition at line 366 of file bm.h.

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

Returns *this. This iterator does not move (no-op)

Definition at line 364 of file bm.h.

template<class Alloc, class MS>
insert_iterator& bm::bvector< Alloc, MS >::insert_iterator::operator= bm::id_t  n  )  [inline]
 

Definition at line 344 of file bm.h.

References BM_ASSERT, bm::bvector< Alloc, MS >::insert_iterator::bvect_, and bm::bvector< Alloc, MS >::insert_iterator::max_bit_.


Field Documentation

template<class Alloc, class MS>
bm::bvector<Alloc, MS>& bm::bvector< Alloc, MS >::insert_iterator::bvect_ [protected]
 

Definition at line 369 of file bm.h.

Referenced by bm::bvector< Alloc, MS >::insert_iterator::insert_iterator(), and bm::bvector< Alloc, MS >::insert_iterator::operator=().

template<class Alloc, class MS>
bm::id_t bm::bvector< Alloc, MS >::insert_iterator::max_bit_ [protected]
 

Definition at line 370 of file bm.h.

Referenced by bm::bvector< Alloc, MS >::insert_iterator::insert_iterator(), and bm::bvector< Alloc, MS >::insert_iterator::operator=().


The documentation for this class was generated from the following file:
Generated on Sun Aug 5 14:12:38 2007 for BitMagic by  doxygen 1.4.1