jaulib v1.3.6
Jau Support Library (C++, Java, ..)
|
Simple bitfield template for efficient bit storage access in O(1). More...
#include <bitfield.hpp>
Public Member Functions | |
constexpr | bitfield () noexcept |
size_t | bitCount () const noexcept |
constexpr void | clear () noexcept |
constexpr void | clr (size_t bitnum) noexcept |
bool | copy (size_t srcBitnum, size_t dstBitnum) noexcept |
uint32_t | copyu32 (size_t srcBitnum, size_t dstBitnum, size_t length) noexcept |
constexpr bool | get (size_t bitnum) const noexcept |
uint32_t | getu32 (size_t lowBitnum, size_t length) const noexcept |
constexpr void | put (size_t bitnum, bool v) noexcept |
void | putu32 (size_t lowBitnum, size_t length, uint32_t data) noexcept |
constexpr void | set (size_t bitnum) noexcept |
Static Public Member Functions | |
static constexpr bool | in_range (size_t bitnum) |
Static Public Attributes | |
static constexpr size_t | bit_size = BitSize |
static constexpr size_t | unit_bit_size = 32 |
static constexpr size_t | unit_shift = 5 |
Simple bitfield template for efficient bit storage access in O(1).
Implementations utilizes an in-memory std::array<uint32_t, (BitSize+31)/5>
.
Definition at line 41 of file bitfield.hpp.
|
inlineconstexprnoexcept |
Definition at line 68 of file bitfield.hpp.
|
inlinestaticconstexpr |
Definition at line 66 of file bitfield.hpp.
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
Definition at line 101 of file bitfield.hpp.
|
inlineconstexprnoexcept |
Definition at line 103 of file bitfield.hpp.
|
inlinenoexcept |
Definition at line 106 of file bitfield.hpp.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Definition at line 166 of file bitfield.hpp.
|
inlinenoexcept |
Definition at line 173 of file bitfield.hpp.
|
staticconstexpr |
Definition at line 43 of file bitfield.hpp.
|
staticconstexpr |
Definition at line 44 of file bitfield.hpp.
|
staticconstexpr |
Definition at line 45 of file bitfield.hpp.