Main Page | Modules | Namespace List | Class Hierarchy | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages

BitVector Class Reference
[linbox/vector]

#include <bit-vector.h>


Detailed Description

A vector of boolean 0-1 values, stored compactly to save space.

BitVector provides an additional iterator, word_iterator, that gives the bits in compact 32-bit words, so that vector operations may be done in parallel. It is similar to the STL bit_vector except that it provides the aforementioned additional iterator.


Public Types

typedef bool value_type
typedef size_t size_type
typedef int difference_type
typedef std::vector< unsigned
long >::iterator 
word_iterator
typedef std::vector< unsigned
long >::const_iterator 
const_word_iterator
typedef std::vector< unsigned
long >::reverse_iterator 
reverse_word_iterator
typedef std::vector< unsigned
long >::const_reverse_iterator 
const_reverse_word_iterator
typedef std::reverse_iterator<
iterator > 
reverse_iterator
typedef std::reverse_iterator<
const_iterator > 
const_reverse_iterator
typedef iterator pointer

Public Member Functions

 BitVector ()
 BitVector (std::vector< bool > &v)
 BitVector (std::vector< unsigned long > &v)
 BitVector (size_t n, bool val=false)
 BitVector (const BitVector &v)
 ~BitVector ()
iterator begin (void)
const_iterator begin (void) const
iterator end (void)
const_iterator end (void) const
reverse_iterator rbegin (void)
const_reverse_iterator rbegin (void) const
reverse_iterator rend (void)
const_reverse_iterator rend (void) const
word_iterator wordBegin (void)
const_word_iterator wordBegin (void) const
word_iterator wordEnd (void)
const_word_iterator wordEnd (void) const
reverse_word_iterator wordRbegin (void)
const_reverse_word_iterator wordRbegin (void) const
reverse_word_iterator wordRend (void)
const_reverse_word_iterator wordRend (void) const
reference operator[] (size_type n)
const_reference operator[] (size_type n) const
reference at (size_type n)
const_reference at (size_type n) const
reference front (void)
const_reference front (void) const
reference back (void)
const_reference back (void) const
template<class Container> BitVectoroperator= (const Container &x)
void resize (size_type new_size, bool val=false)
size_type size (void) const
bool empty (void) const
size_type max_size (void) const
bool operator== (const BitVector &v) const

Protected Attributes

std::vector< unsigned long > _v
size_t _size


Member Typedef Documentation

typedef bool value_type
 

typedef size_t size_type
 

typedef int difference_type
 

typedef std::vector<unsigned long>::iterator word_iterator
 

typedef std::vector<unsigned long>::const_iterator const_word_iterator
 

typedef std::vector<unsigned long>::reverse_iterator reverse_word_iterator
 

typedef std::vector<unsigned long>::const_reverse_iterator const_reverse_word_iterator
 

typedef std::reverse_iterator<iterator> reverse_iterator
 

typedef std::reverse_iterator<const_iterator> const_reverse_iterator
 

typedef iterator pointer
 


Constructor & Destructor Documentation

BitVector  )  [inline]
 

BitVector std::vector< bool > &  v  )  [inline]
 

BitVector std::vector< unsigned long > &  v  )  [inline]
 

BitVector size_t  n,
bool  val = false
[inline]
 

BitVector const BitVector v  )  [inline]
 

~BitVector  )  [inline]
 


Member Function Documentation

iterator begin void   )  [inline]
 

const_iterator begin void   )  const [inline]
 

iterator end void   )  [inline]
 

const_iterator end void   )  const [inline]
 

reverse_iterator rbegin void   )  [inline]
 

const_reverse_iterator rbegin void   )  const [inline]
 

reverse_iterator rend void   )  [inline]
 

const_reverse_iterator rend void   )  const [inline]
 

word_iterator wordBegin void   )  [inline]
 

const_word_iterator wordBegin void   )  const [inline]
 

word_iterator wordEnd void   )  [inline]
 

const_word_iterator wordEnd void   )  const [inline]
 

reverse_word_iterator wordRbegin void   )  [inline]
 

const_reverse_word_iterator wordRbegin void   )  const [inline]
 

reverse_word_iterator wordRend void   )  [inline]
 

const_reverse_word_iterator wordRend void   )  const [inline]
 

reference operator[] size_type  n  )  [inline]
 

const_reference operator[] size_type  n  )  const [inline]
 

reference at size_type  n  ) 
 

const_reference at size_type  n  )  const
 

reference front void   )  [inline]
 

const_reference front void   )  const [inline]
 

reference back void   )  [inline]
 

const_reference back void   )  const [inline]
 

BitVector& operator= const Container &  x  ) 
 

void resize size_type  new_size,
bool  val = false
 

size_type size void   )  const [inline]
 

bool empty void   )  const [inline]
 

size_type max_size void   )  const [inline]
 

bool operator== const BitVector v  )  const
 


Field Documentation

std::vector<unsigned long> _v [protected]
 

size_t _size [protected]
 


Generated on Fri Jul 8 10:29:57 2005 for linbox by doxygen 1.3.7