Bit-mask to encode active states and facilitate sequential iterators and a fast codec for I/O compression. More...
#include <nanovdb/NanoVDB.h>
| Classes | |
| class | DenseIterator | 
| class | Iterator | 
| Public Types | |
| using | OnIterator = Iterator<true> | 
| using | OffIterator = Iterator<false> | 
| Public Member Functions | |
| __hostdev__ uint32_t | countOn () const | 
| Return the total number of set bits in this Mask. | |
| __hostdev__ uint32_t | countOn (uint32_t i) const | 
| Return the number of lower set bits in mask up to but excluding the i'th bit. | |
| __hostdev__ OnIterator | beginOn () const | 
| __hostdev__ OffIterator | beginOff () const | 
| __hostdev__ DenseIterator | beginAll () const | 
| __hostdev__ | Mask () | 
| Initialize all bits to zero. | |
| __hostdev__ | Mask (bool on) | 
| __hostdev__ | Mask (const Mask &other) | 
| Copy constructor. | |
| __hostdev__ uint64_t * | words () | 
| Return a pointer to the list of words of the bit mask. | |
| __hostdev__ const uint64_t * | words () const | 
| template<typename WordT> | |
| __hostdev__ WordT | getWord (uint32_t n) const | 
| template<typename WordT> | |
| __hostdev__ void | setWord (WordT w, uint32_t n) | 
| template<typename MaskT = Mask> | |
| __hostdev__ util::enable_if<!util::is_same< MaskT, Mask >::value, Mask & >::type | operator= (const MaskT &other) | 
| Assignment operator that works with openvdb::util::NodeMask. | |
| Mask & | operator= (const Mask &)=default | 
| __hostdev__ bool | operator== (const Mask &other) const | 
| __hostdev__ bool | operator!= (const Mask &other) const | 
| __hostdev__ bool | isOn (uint32_t n) const | 
| Return true if the given bit is set. | |
| __hostdev__ bool | isOff (uint32_t n) const | 
| Return true if the given bit is NOT set. | |
| __hostdev__ bool | isOn () const | 
| Return true if all the bits are set in this Mask. | |
| __hostdev__ bool | isOff () const | 
| Return true if none of the bits are set in this Mask. | |
| __hostdev__ void | setOn (uint32_t n) | 
| Set the specified bit on. | |
| __hostdev__ void | setOff (uint32_t n) | 
| Set the specified bit off. | |
| __hostdev__ void | set (uint32_t n, bool on) | 
| Set the specified bit on or off. | |
| __hostdev__ void | setOn () | 
| Set all bits on. | |
| __hostdev__ void | setOff () | 
| Set all bits off. | |
| __hostdev__ void | set (bool on) | 
| Set all bits off. | |
| __hostdev__ void | toggle () | 
| brief Toggle the state of all bits in the mask | |
| __hostdev__ void | toggle (uint32_t n) | 
| __hostdev__ Mask & | operator&= (const Mask &other) | 
| Bitwise intersection. | |
| __hostdev__ Mask & | operator|= (const Mask &other) | 
| Bitwise union. | |
| __hostdev__ Mask & | operator-= (const Mask &other) | 
| Bitwise difference. | |
| __hostdev__ Mask & | operator^= (const Mask &other) | 
| Bitwise XOR. | |
| template<bool ON> | |
| NANOVDB_HOSTDEV_DISABLE_WARNING __hostdev__ uint32_t | findFirst () const | 
| template<bool ON> | |
| NANOVDB_HOSTDEV_DISABLE_WARNING __hostdev__ uint32_t | findNext (uint32_t start) const | 
| template<bool ON> | |
| NANOVDB_HOSTDEV_DISABLE_WARNING __hostdev__ uint32_t | findPrev (uint32_t start) const | 
| Static Public Member Functions | |
| static __hostdev__ size_t | memUsage () | 
| Return the memory footprint in bytes of this Mask. | |
| static __hostdev__ uint32_t | bitCount () | 
| Return the number of bits available in this Mask. | |
| static __hostdev__ uint32_t | wordCount () | 
| Return the number of machine words used by this Mask. | |
| Static Public Attributes | |
| static constexpr uint32_t | SIZE = 1U << (3 * LOG2DIM) | 
| static constexpr uint32_t | WORD_COUNT = SIZE >> 6 | 
Bit-mask to encode active states and facilitate sequential iterators and a fast codec for I/O compression.
| using OffIterator = Iterator<false> | 
| using OnIterator = Iterator<true> | 
| 
 | inline | 
Initialize all bits to zero.
| 
 | inline | 
| 
 | inline | 
Copy constructor.
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inlinestatic | 
Return the number of bits available in this Mask.
| 
 | inline | 
Return the total number of set bits in this Mask.
| 
 | inline | 
Return the number of lower set bits in mask up to but excluding the i'th bit.
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
Return true if none of the bits are set in this Mask.
| 
 | inline | 
Return true if the given bit is NOT set.
| 
 | inline | 
Return true if all the bits are set in this Mask.
| 
 | inline | 
Return true if the given bit is set.
| 
 | inlinestatic | 
Return the memory footprint in bytes of this Mask.
| 
 | inline | 
| 
 | inline | 
Bitwise intersection.
| 
 | inline | 
Bitwise difference.
| 
 | inline | 
Assignment operator that works with openvdb::util::NodeMask.
| 
 | inline | 
| 
 | inline | 
Bitwise XOR.
| 
 | inline | 
Bitwise union.
| 
 | inline | 
Set all bits off.
| 
 | inline | 
Set the specified bit on or off.
| 
 | inline | 
Set all bits off.
| 
 | inline | 
Set the specified bit off.
| 
 | inline | 
Set all bits on.
| 
 | inline | 
Set the specified bit on.
| 
 | inline | 
| 
 | inline | 
brief Toggle the state of all bits in the mask
| 
 | inline | 
| 
 | inlinestatic | 
Return the number of machine words used by this Mask.
| 
 | inline | 
Return a pointer to the list of words of the bit mask.
| 
 | inline | 
| 
 | staticconstexpr | 
| 
 | staticconstexpr |