#include "defs.h"#include "cxx_memory.h"


Go to the source code of this file.
Data Types | |
| module | BIT_VECTOR |
Defines | |
| #define | UINT64_size 64 |
| #define UINT64_size 64 |
Module: lno_bv.h $Revision$ $Date$ $Author$ $Source$
Revision history:
10-APR-95 dkchen - Original Version
Description:
This interface describes a bit vector graph class. It can be used to represent bit vectors of arbitrary length. Althought the size of each vector has to be initialized and fixed.
Exported Types and Functions
The bit vector class
BIT_VECTOR()
Default constructor.
~BIT_VECTOR() {}
Destructor.
BIT_VECTOR(UINT size, MEM_POOL *pool)
Construct a bit vector of size 'size' using memory pool 'pool'. The same memory pool is also used for results from operations such as '&' and '|' (see below).
UINT Size()
How many elements in the bit vector
void Init(UINT size, MEM_POOL *pool)
Same as the constructor.
void Set(UINT bit_position)
Set a bit specified by 'bit_position'.
void Reset(UINT bit_position)
Reset a bit specified by 'bit_position'.
BOOL Test(UINT bit_position)
Test if bit at 'bit_position' is set.
void Print(FILE *fp)
Print the bit vector in Hex-decimal format to FILE fp.
UINT Pop_Count()
Returns population count of the current bit vector.
INT Least_Non_Zero()
Returns least significant non-zero bit or -1 if there is none.
BOOL operator ==(const BIT_VECTOR &bv1) const BOOL operator !=(const BIT_VECTOR &bv1) const BIT_VECTOR& operator &(const BIT_VECTOR &bv1) const BIT_VECTOR& operator |(const BIT_VECTOR &bv1) const BIT_VECTOR& operator -(const BIT_VECTOR &bv1) const BIT_VECTOR& operator ~() const BIT_VECTOR& operator =(const BIT_VECTOR &bv1) BIT_VECTOR& operator &=(const BIT_VECTOR &bv1) BIT_VECTOR& operator |=(const BIT_VECTOR &bv1)
Operators with nature interpretations.
BOOL Intersects(BIT_VECTOR *bv)
Does bv intersect with this
Definition at line 138 of file lno_bv.h.
Referenced by BIT_VECTOR::BIT_VECTOR(), BIT_VECTOR::Init(), BIT_VECTOR::Intersects(), BIT_VECTOR::Least_Non_Zero(), BIT_VECTOR::operator &(), BIT_VECTOR::operator &=(), BIT_VECTOR::operator!=(), BIT_VECTOR::operator-(), BIT_VECTOR::operator=(), BIT_VECTOR::operator==(), BIT_VECTOR::operator|(), BIT_VECTOR::operator|=(), BIT_VECTOR::operator~(), BIT_VECTOR::Pop_Count(), BIT_VECTOR::Print(), BIT_VECTOR::Reset(), BIT_VECTOR::Set(), and BIT_VECTOR::Test().
1.5.6