55   std::vector<unsigned long> 
d_map;
    91     : d_capacity(n), d_map((d_capacity+posBits)>>baseShift,0)
    95   BitMap(
const BitMap& b) : d_capacity(b.d_capacity), d_map(b.d_map) {}
    99     BitMap(
unsigned long n, 
const I& first, 
const I& last);
   102   template <
typename U> 
   103   BitMap(
unsigned long n,
const std::vector<U>& 
v)
   104     : d_capacity(n), d_map((d_capacity+posBits)>>baseShift)
   106     for (
size_t i=0; i<v.size(); ++i)
   111   template <
typename I, 
typename J>
   112     BitMap(
const I& first, 
const I& last, 
const J& fsub, 
const J& lsub);
   125   size_type 
size() 
const; 
   152   unsigned long n_th(
unsigned long n) 
const;
   155   unsigned long position(
unsigned long n) 
const;
   157   unsigned long front() 
const;
   161   bool back_up(
unsigned long& n) 
const;
   164   unsigned long range(
unsigned long first, 
unsigned long number) 
const;
   167   { 
BitMap result(*
this); result&=other; 
return result; }
   170   { 
BitMap result(*
this); result|=other; 
return result; }
   173   { 
BitMap result(*
this); result^=other; 
return result; }
   199     assert(n<d_capacity);
   207   void remove(
unsigned long n)
   209     assert(n<d_capacity);
   214   { 
if (b) 
insert(n); 
else remove(
n); }
   220     assert(n<d_capacity);
   226  void reset() { d_map.assign(d_map.size(),0ul);  } 
   227  void fill(
size_t start,
size_t stop); 
   228  void clear(
size_t start,
size_t stop); 
   238  void setRange(
unsigned long start, 
unsigned long amount, 
unsigned long source);
   268   std::vector<unsigned long>::const_iterator 
d_chunk; 
   285     d_capacity(j.d_capacity) {}
   287   iterator(
const std::vector<unsigned long>::const_iterator& 
p,
   288        unsigned long n, 
unsigned long c)
   289     :d_chunk(p), d_bitAddress(n), d_capacity(c) {}
   299   bool operator() ()
 const { 
return d_bitAddress != 
d_capacity; }
   301   const value_type& 
operator* ()
 const { 
return d_bitAddress; }
   308   void change_owner(
const BitMap& b); 
 ptrdiff_t difference_type
Definition: bitmap.h:72
BitMap & operator~()
Definition: bitmap.cpp:368
unsigned long d_capacity
Definition: bitmap.h:270
void extend_capacity(bool b)
Definition: bitmap.cpp:559
bool empty() const 
Definition: bitmap.cpp:209
BitMap operator^(const BitMap &other) const 
Definition: bitmap.h:172
BitMap operator&(const BitMap &other) const 
Definition: bitmap.h:166
std::vector< unsigned long >::const_iterator d_chunk
Definition: bitmap.h:268
unsigned long d_bitAddress
Definition: bitmap.h:269
BitMap()
Definition: bitmap.h:82
bool full() const 
Definition: bitmap.cpp:240
iterator begin() const 
Definition: bitmap.cpp:130
iterator const_iterator
Definition: bitmap.h:76
BitMap(const BitMap &b)
Copy constructor. 
Definition: bitmap.h:95
value_type & reference
Definition: bitmap.h:68
uA p
Definition: lists.cpp:26
unsigned long size_type
Definition: bitmap.h:73
void set_capacity(unsigned long n)
Definition: bitmap.cpp:548
void clear(size_t start, size_t stop)
Sets all the bits in positions |i| with |start<=i<stop|. 
Definition: bitmap.cpp:511
BitMap(unsigned long n)
Constructs a zero-initialized bitmap with a capacity of n bits. 
Definition: bitmap.h:90
bool contains(const BitMap &b) const 
Definition: bitmap.cpp:182
ptrdiff_t difference_type
Definition: bitmap.h:277
BitMap & operator^=(const BitMap &)
Definition: bitmap.cpp:412
unsigned long value_type
Definition: bitmap.h:276
bool operator<(const BitMap &b) const 
Definition: bitmap.h:127
iterator(const std::vector< unsigned long >::const_iterator &p, unsigned long n, unsigned long c)
Definition: bitmap.h:287
iterator(const iterator &j)
Definition: bitmap.h:284
void set_to(unsigned long n, bool b)
Definition: bitmap.h:213
static unsigned long baseBits
Definition: bitmap.h:57
std::vector< unsigned long > d_map
Definition: bitmap.h:55
const value_type & reference
Definition: bitmap.h:279
unsigned long position(unsigned long n) const 
Number of values |<n| present (set) in the bitmap. 
Definition: bitmap.cpp:305
bool operator==(const BitMap &b) const 
Definition: bitmap.h:128
std::forward_iterator_tag iterator_category
Definition: bitmap.h:275
iterator()
Definition: bitmap.h:282
const value_type * pointer
Definition: bitmap.h:278
void fill()
Definition: bitmap.cpp:484
unsigned long capacity() const 
Definition: bitmap.h:124
const value_type & const_reference
Definition: bitmap.h:69
bool operator&=(const BitMap &)
Definition: bitmap.cpp:383
bool operator!=(const BitMap &b) const 
Definition: bitmap.h:129
RationalVector< C2 > operator*(const matrix::Matrix< C1 > &M, const RationalVector< C2 > &v)
Definition: ratvec.cpp:158
bool back_up(unsigned long &n) const 
Definition: bitmap.cpp:160
size_type size() const 
Definition: bitmap.cpp:345
BitMap & operator<<=(unsigned long delta)
Definition: bitmap.cpp:435
RealFormNbr number
Definition: output.cpp:72
void flip(unsigned long n)
Definition: bitmap.h:218
BitMap & andnot(const BitMap &b)
Definition: bitmap.cpp:426
BitMap(unsigned long n, const std::vector< U > &v)
Definition: bitmap.h:103
static unsigned long posBits
Definition: bitmap.h:56
void reset()
Definition: bitmap.h:226
const value_type * const_pointer
Definition: bitmap.h:71
Definition: constants.h:35
void set_mod2(unsigned long n, unsigned long v)
Definition: bitmap.h:216
BitMap & operator>>=(unsigned long delta)
Definition: bitmap.cpp:457
value_type * pointer
Definition: bitmap.h:70
void setRange(unsigned long start, unsigned long amount, unsigned long source)
Definition: bitmap.cpp:574
iterator end() const 
returns the past-the-end iterator for the bitmap. 
Definition: bitmap.cpp:148
static unsigned long bitMask[longBits]
Definition: constants.h:48
unsigned long n
Definition: axis.cpp:77
BitMap & operator=(const BitMap &)
Definition: bitmap.cpp:114
size_t d_capacity
Definition: bitmap.h:54
unsigned long front() const 
Definition: bitmap.cpp:223
unsigned long value_type
Definition: bitmap.h:67
BitMap operator|(const BitMap &other) const 
Definition: bitmap.h:169
unsigned long n_th(unsigned long n) const 
Value at index |n| if viewed as list of |unsigned long| values. 
Definition: bitmap.cpp:267
static unsigned long baseShift
Definition: bitmap.h:58
Container of a large (more than twice the machine word size) set of bits. 
Definition: bitmap.h:52
void swap(BitMap &)
Definition: bitmap.cpp:583
void insert(unsigned long n)
Definition: bitmap.h:197
BitMap & operator|=(const BitMap &)
Definition: bitmap.cpp:400
bool isMember(unsigned long n) const 
Definition: bitmap.h:138
Traverses the set bits of a BitMap. 
Definition: bitmap.h:266
unsigned long range(unsigned long first, unsigned long number) const 
Definition: bitmap.cpp:331
bool disjoint(const BitMap &b) const 
Definition: bitmap.cpp:194
Vertex v
Definition: graph.cpp:116