OpenVDB
12.0.0
|
Template specialization of NodeMask for Log2Dim=1, i.e. 2^3 nodes. More...
#include <openvdb/util/NodeMasks.h>
Public Types | |
using | Word = Byte |
using | OnIterator = OnMaskIterator< NodeMask > |
using | OffIterator = OffMaskIterator< NodeMask > |
using | DenseIterator = DenseMaskIterator< NodeMask > |
Public Member Functions | |
NodeMask () | |
Default constructor sets all bits off. More... | |
NodeMask (bool on) | |
All bits are set to the specified state. More... | |
NodeMask (const NodeMask &other) | |
Copy constructor. More... | |
~NodeMask () | |
Destructor. More... | |
void | operator= (const NodeMask &other) |
Assignment operator. More... | |
OnIterator | beginOn () const |
OnIterator | endOn () const |
OffIterator | beginOff () const |
OffIterator | endOff () const |
DenseIterator | beginDense () const |
DenseIterator | endDense () const |
bool | operator== (const NodeMask &other) const |
bool | operator!= (const NodeMask &other) const |
template<typename WordOp > | |
const NodeMask & | foreach (const NodeMask &other, const WordOp &op) |
Apply a functor to the words of the this and the other mask. More... | |
template<typename WordOp > | |
const NodeMask & | foreach (const NodeMask &other1, const NodeMask &other2, const WordOp &op) |
template<typename WordOp > | |
const NodeMask & | foreach (const NodeMask &other1, const NodeMask &other2, const NodeMask &other3, const WordOp &op) |
const NodeMask & | operator&= (const NodeMask &other) |
Bitwise intersection. More... | |
const NodeMask & | operator|= (const NodeMask &other) |
Bitwise union. More... | |
const NodeMask & | operator-= (const NodeMask &other) |
Bitwise difference. More... | |
const NodeMask & | operator^= (const NodeMask &other) |
Bitwise XOR. More... | |
NodeMask | operator! () const |
NodeMask | operator& (const NodeMask &other) const |
NodeMask | operator| (const NodeMask &other) const |
NodeMask | operator^ (const NodeMask &other) const |
Index32 | countOn () const |
Return the total number of on bits. More... | |
Index32 | countOff () const |
Return the total number of on bits. More... | |
void | setOn (Index32 n) |
Set the nth bit on. More... | |
void | setOff (Index32 n) |
Set the nth bit off. More... | |
void | set (Index32 n, bool On) |
Set the nth bit to the specified state. More... | |
void | set (bool on) |
Set all bits to the specified state. More... | |
void | setOn () |
Set all bits on. More... | |
void | setOff () |
Set all bits off. More... | |
void | toggle (Index32 n) |
Toggle the state of the nth bit. More... | |
void | toggle () |
Toggle the state of all bits in the mask. More... | |
void | setFirstOn () |
Set the first bit on. More... | |
void | setLastOn () |
Set the last bit on. More... | |
void | setFirstOff () |
Set the first bit off. More... | |
void | setLastOff () |
Set the last bit off. More... | |
bool | isOn (Index32 n) const |
Return true if the nth bit is on. More... | |
bool | isOff (Index32 n) const |
Return true if the nth bit is off. More... | |
bool | isOn () const |
Return true if all the bits are on. More... | |
bool | isOff () const |
Return true if all the bits are off. More... | |
bool | isConstant (bool &isOn) const |
Index32 | findFirstOn () const |
Index32 | findFirstOff () const |
void | save (std::ostream &os) const |
void | load (std::istream &is) |
void | seek (std::istream &is) const |
void | printInfo (std::ostream &os=std::cout) const |
simple print method for debugging More... | |
void | printBits (std::ostream &os=std::cout) const |
void | printAll (std::ostream &os=std::cout) const |
Index32 | findNextOn (Index32 start) const |
Index32 | findNextOff (Index32 start) const |
Static Public Member Functions | |
static Index32 | memUsage () |
Return the byte size of this NodeMask. More... | |
Static Public Attributes | |
static const Index32 | LOG2DIM = 1 |
static const Index32 | DIM = 2 |
static const Index32 | SIZE = 8 |
static const Index32 | WORD_COUNT = 1 |
Template specialization of NodeMask for Log2Dim=1, i.e. 2^3 nodes.
using DenseIterator = DenseMaskIterator<NodeMask> |
using OffIterator = OffMaskIterator<NodeMask> |
using OnIterator = OnMaskIterator<NodeMask> |
|
inline |
Default constructor sets all bits off.
|
inline |
All bits are set to the specified state.
|
inline |
Destructor.
|
inline |
|
inline |
|
inline |
|
inline |
Return the total number of on bits.
|
inline |
Return the total number of on bits.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Return true
if bits are either all off OR all on.
isOn | Takes on the values of all bits if the method returns true - else it is undefined. |
|
inline |
Return true if the nth bit is off.
|
inline |
Return true if all the bits are off.
|
inline |
Return true if the nth bit is on.
|
inline |
Return true if all the bits are on.
|
inline |
|
inline |
|
inline |
Assignment operator.
|
inline |
|
inline |
|
inline |
|
inline |
simple print method for debugging
|
inline |
|
inline |
|
inline |
Set the nth bit to the specified state.
|
inline |
Set all bits to the specified state.
|
inline |
Set the first bit off.
|
inline |
Set the first bit on.
|
inline |
Set the last bit off.
|
inline |
Set the last bit on.
|
inline |
Set the nth bit off.
|
inline |
Set all bits off.
|
inline |
Set the nth bit on.
|
inline |
Set all bits on.
|
inline |
Toggle the state of the nth bit.
|
inline |
Toggle the state of all bits in the mask.
|
static |
|
static |
|
static |
|
static |