QUBO++ Library with QUBO Solver APIs
Author: Koji Nakano, License: Non-commercial research and evaluation purposes without any guarantees.
Public Member Functions | Private Attributes | List of all members
qbpp::impl::BitVector Class Reference

#include <qbpp.hpp>

Public Member Functions

 BitVector (vindex_t bit_count)
 
 BitVector (const BitVector &bit_vector)
 
 BitVector (BitVector &&bit_vector)
 
BitVectoroperator= (const BitVector &bit_vector)
 
BitVectoroperator= (BitVector &bit_vector)
 
BitVectoroperator= (BitVector &&bit_vector)
 
bool operator== (const BitVector &bit_vector) const
 
bool operator!= (const BitVector &bit_vector) const
 
bool operator< (const BitVector &bit_vector) const
 
vindex_t size () const
 
vindex_t size64 () const
 
bool get (vindex_t index) const
 
void set (vindex_t index, bool value)
 
void flip (vindex_t index)
 
uint64_t get64 (vindex_t index64) const
 
uint64_t set64 (vindex_t index64, uint64_t value)
 
void clear ()
 
vindex_t popcount () const
 
std::string str () const
 

Private Attributes

const vindex_t bit_count_
 
const vindex_t size64_
 
std::unique_ptr< uint64_t[]> bits_
 

Detailed Description

Definition at line 1277 of file qbpp.hpp.

Constructor & Destructor Documentation

◆ BitVector() [1/3]

qbpp::impl::BitVector::BitVector ( vindex_t  bit_count)
inlineexplicit

Definition at line 1285 of file qbpp.hpp.

◆ BitVector() [2/3]

qbpp::impl::BitVector::BitVector ( const BitVector bit_vector)
inlineexplicit

Definition at line 1290 of file qbpp.hpp.

◆ BitVector() [3/3]

qbpp::impl::BitVector::BitVector ( BitVector &&  bit_vector)
inline

Definition at line 1298 of file qbpp.hpp.

Member Function Documentation

◆ operator=() [1/3]

BitVector& qbpp::impl::BitVector::operator= ( const BitVector bit_vector)
inline

Definition at line 1303 of file qbpp.hpp.

◆ operator=() [2/3]

BitVector& qbpp::impl::BitVector::operator= ( BitVector bit_vector)
inline

Definition at line 1316 of file qbpp.hpp.

◆ operator=() [3/3]

BitVector& qbpp::impl::BitVector::operator= ( BitVector &&  bit_vector)
inline

Definition at line 1328 of file qbpp.hpp.

◆ operator==()

bool qbpp::impl::BitVector::operator== ( const BitVector bit_vector) const
inline

Definition at line 1340 of file qbpp.hpp.

Here is the call graph for this function:

◆ operator!=()

bool qbpp::impl::BitVector::operator!= ( const BitVector bit_vector) const
inline

Definition at line 1349 of file qbpp.hpp.

Here is the call graph for this function:

◆ operator<()

bool qbpp::impl::BitVector::operator< ( const BitVector bit_vector) const
inline

Definition at line 1353 of file qbpp.hpp.

◆ size()

vindex_t qbpp::impl::BitVector::size ( ) const
inline

Definition at line 1377 of file qbpp.hpp.

Here is the caller graph for this function:

◆ size64()

vindex_t qbpp::impl::BitVector::size64 ( ) const
inline

Definition at line 1379 of file qbpp.hpp.

◆ get()

bool qbpp::impl::BitVector::get ( vindex_t  index) const
inline

Definition at line 1381 of file qbpp.hpp.

Here is the caller graph for this function:

◆ set()

void qbpp::impl::BitVector::set ( vindex_t  index,
bool  value 
)
inline

Definition at line 1388 of file qbpp.hpp.

Here is the caller graph for this function:

◆ flip()

void qbpp::impl::BitVector::flip ( vindex_t  index)
inline

Definition at line 1398 of file qbpp.hpp.

Here is the caller graph for this function:

◆ get64()

uint64_t qbpp::impl::BitVector::get64 ( vindex_t  index64) const
inline

Definition at line 1405 of file qbpp.hpp.

◆ set64()

uint64_t qbpp::impl::BitVector::set64 ( vindex_t  index64,
uint64_t  value 
)
inline

Definition at line 1412 of file qbpp.hpp.

◆ clear()

void qbpp::impl::BitVector::clear ( )
inline

Definition at line 1422 of file qbpp.hpp.

Here is the caller graph for this function:

◆ popcount()

vindex_t qbpp::impl::BitVector::popcount ( ) const
inline

Definition at line 1424 of file qbpp.hpp.

Here is the caller graph for this function:

◆ str()

std::string qbpp::impl::BitVector::str ( ) const
inline

Definition at line 1432 of file qbpp.hpp.

Member Data Documentation

◆ bit_count_

const vindex_t qbpp::impl::BitVector::bit_count_
private

Definition at line 1278 of file qbpp.hpp.

◆ size64_

const vindex_t qbpp::impl::BitVector::size64_
private

Definition at line 1280 of file qbpp.hpp.

◆ bits_

std::unique_ptr<uint64_t[]> qbpp::impl::BitVector::bits_
private

Definition at line 1282 of file qbpp.hpp.


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