FastLED 3.9.15
|
A dynamic bitset implementation that can be resized at runtime.
Definition at line 11 of file bitset_dynamic.h.
#include <bitset_dynamic.h>
Public Member Functions | |
bitset_dynamic ()=default | |
bitset_dynamic (bitset_dynamic &&other) noexcept | |
bitset_dynamic (const bitset_dynamic &other) | |
bitset_dynamic (uint32_t size) | |
~bitset_dynamic () | |
bool | all () const noexcept |
bool | any () const noexcept |
void | assign (size_t n, bool val) |
void | clear () |
uint32_t | count () const noexcept |
void | flip () noexcept |
void | flip (uint32_t pos) noexcept |
bool | none () const noexcept |
bitset_dynamic | operator& (const bitset_dynamic &other) const |
bitset_dynamic & | operator= (bitset_dynamic &&other) noexcept |
bitset_dynamic & | operator= (const bitset_dynamic &other) |
bool | operator[] (uint32_t pos) const noexcept |
bitset_dynamic | operator^ (const bitset_dynamic &other) const |
bitset_dynamic | operator| (const bitset_dynamic &other) const |
bitset_dynamic | operator~ () const |
void | reset () noexcept |
void | reset (uint32_t pos) noexcept |
void | resize (uint32_t new_size) |
void | set (uint32_t pos) noexcept |
void | set (uint32_t pos, bool value) noexcept |
uint32_t | size () const noexcept |
bool | test (uint32_t pos) const noexcept |
Private Types | |
using | block_type = uint64_t |
Static Private Member Functions | |
static uint32_t | calc_block_count (uint32_t bit_count) |
Private Attributes | |
uint32_t | _block_count = 0 |
block_type * | _blocks = nullptr |
uint32_t | _size = 0 |
Static Private Attributes | |
static constexpr uint32_t | bits_per_block = 8 * sizeof(uint64_t) |