operations_research::RevBitSet Class Reference

Detailed Description

This class represents a reversible bitset.

This class is useful to maintain supports.

Definition at line 435 of file constraint_solveri.h.

Public Member Functions

 RevBitSet (int64 size)
 
 ~RevBitSet ()
 
void SetToOne (Solver *const solver, int64 index)
 Sets the 'index' bit. More...
 
void SetToZero (Solver *const solver, int64 index)
 Erases the 'index' bit. More...
 
bool IsSet (int64 index) const
 Returns whether the 'index' bit is set. More...
 
int64 Cardinality () const
 Returns the number of bits set to one. More...
 
bool IsCardinalityZero () const
 Is bitset null? More...
 
bool IsCardinalityOne () const
 Does it contains only one bit set? More...
 
int64 GetFirstBit (int start) const
 Gets the index of the first bit set starting from start. More...
 
void ClearAll (Solver *const solver)
 Cleans all bits. More...
 

Friends

class RevBitMatrix
 

Constructor & Destructor Documentation

◆ RevBitSet()

operations_research::RevBitSet::RevBitSet ( int64  size)
explicit

◆ ~RevBitSet()

operations_research::RevBitSet::~RevBitSet ( )

Member Function Documentation

◆ Cardinality()

int64 operations_research::RevBitSet::Cardinality ( ) const

Returns the number of bits set to one.

◆ ClearAll()

void operations_research::RevBitSet::ClearAll ( Solver *const  solver)

Cleans all bits.

◆ GetFirstBit()

int64 operations_research::RevBitSet::GetFirstBit ( int  start) const

Gets the index of the first bit set starting from start.

It returns -1 if the bitset is empty after start.

◆ IsCardinalityOne()

bool operations_research::RevBitSet::IsCardinalityOne ( ) const

Does it contains only one bit set?

◆ IsCardinalityZero()

bool operations_research::RevBitSet::IsCardinalityZero ( ) const

Is bitset null?

◆ IsSet()

bool operations_research::RevBitSet::IsSet ( int64  index) const

Returns whether the 'index' bit is set.

◆ SetToOne()

void operations_research::RevBitSet::SetToOne ( Solver *const  solver,
int64  index 
)

Sets the 'index' bit.

◆ SetToZero()

void operations_research::RevBitSet::SetToZero ( Solver *const  solver,
int64  index 
)

Erases the 'index' bit.

Friends And Related Function Documentation

◆ RevBitMatrix

friend class RevBitMatrix
friend

Definition at line 458 of file constraint_solveri.h.


The documentation for this class was generated from the following file: