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 339 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 346 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 343 of file bm.h.

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

Definition at line 347 of file bm.h.

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

Definition at line 348 of file bm.h.

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

Definition at line 345 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 350 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 374 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 378 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 376 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 356 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 381 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 382 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 Thu Apr 20 13:29:14 2006 for BitMagic by  doxygen 1.4.1