HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim > Class Template Reference

#include <PointDataGrid.h>

+ Inheritance diagram for openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >:

Public Types

using LeafNodeType = PointDataLeafNode< T, Log2Dim >
 
using Ptr = std::shared_ptr< PointDataLeafNode >
 
using ValueType = T
 
using ValueTypePair = std::pair< ValueType, ValueType >
 
using IndexArray = std::vector< ValueType >
 
using Descriptor = AttributeSet::Descriptor
 
using BaseLeaf = tree::LeafNode< T, Log2Dim >
 
using NodeMaskType = util::NodeMask< Log2Dim >
 
using ValueOn = typename BaseLeaf::ValueOn
 
using ValueOff = typename BaseLeaf::ValueOff
 
using ValueAll = typename BaseLeaf::ValueAll
 
using ValueOnIter = typename BaseLeaf::template ValueIter< MaskOnIterator, PointDataLeafNode, const ValueType, ValueOn >
 
using ValueOnCIter = typename BaseLeaf::template ValueIter< MaskOnIterator, const PointDataLeafNode, const ValueType, ValueOn >
 
using ValueOffIter = typename BaseLeaf::template ValueIter< MaskOffIterator, PointDataLeafNode, const ValueType, ValueOff >
 
using ValueOffCIter = typename BaseLeaf::template ValueIter< MaskOffIterator, const PointDataLeafNode, const ValueType, ValueOff >
 
using ValueAllIter = typename BaseLeaf::template ValueIter< MaskDenseIterator, PointDataLeafNode, const ValueType, ValueAll >
 
using ValueAllCIter = typename BaseLeaf::template ValueIter< MaskDenseIterator, const PointDataLeafNode, const ValueType, ValueAll >
 
using ChildOnIter = typename BaseLeaf::template ChildIter< MaskOnIterator, PointDataLeafNode, ChildOn >
 
using ChildOnCIter = typename BaseLeaf::template ChildIter< MaskOnIterator, const PointDataLeafNode, ChildOn >
 
using ChildOffIter = typename BaseLeaf::template ChildIter< MaskOffIterator, PointDataLeafNode, ChildOff >
 
using ChildOffCIter = typename BaseLeaf::template ChildIter< MaskOffIterator, const PointDataLeafNode, ChildOff >
 
using ChildAllIter = typename BaseLeaf::template DenseIter< PointDataLeafNode, ValueType, ChildAll >
 
using ChildAllCIter = typename BaseLeaf::template DenseIter< const PointDataLeafNode, const ValueType, ChildAll >
 
using IndexVoxelIter = IndexIter< ValueVoxelCIter, NullFilter >
 
using IndexAllIter = IndexIter< ValueAllCIter, NullFilter >
 
using IndexOnIter = IndexIter< ValueOnCIter, NullFilter >
 
using IndexOffIter = IndexIter< ValueOffCIter, NullFilter >
 
- Public Types inherited from openvdb::OPENVDB_VERSION_NAME::tree::LeafNode< T, Log2Dim >
using BuildType = T
 
using ValueType = T
 
using Buffer = LeafBuffer< ValueType, Log2Dim >
 
using LeafNodeType = LeafNode< ValueType, Log2Dim >
 
using NodeMaskType = util::NodeMask< Log2Dim >
 
using Ptr = SharedPtr< LeafNode >
 
using ValueOnIter = ValueIter< MaskOnIterator, LeafNode, const ValueType, ValueOn >
 
using ValueOnCIter = ValueIter< MaskOnIterator, const LeafNode, const ValueType, ValueOn >
 
using ValueOffIter = ValueIter< MaskOffIterator, LeafNode, const ValueType, ValueOff >
 
using ValueOffCIter = ValueIter< MaskOffIterator, const LeafNode, const ValueType, ValueOff >
 
using ValueAllIter = ValueIter< MaskDenseIterator, LeafNode, const ValueType, ValueAll >
 
using ValueAllCIter = ValueIter< MaskDenseIterator, const LeafNode, const ValueType, ValueAll >
 
using ChildOnIter = ChildIter< MaskOnIterator, LeafNode, ChildOn >
 
using ChildOnCIter = ChildIter< MaskOnIterator, const LeafNode, ChildOn >
 
using ChildOffIter = ChildIter< MaskOffIterator, LeafNode, ChildOff >
 
using ChildOffCIter = ChildIter< MaskOffIterator, const LeafNode, ChildOff >
 
using ChildAllIter = DenseIter< LeafNode, ValueType, ChildAll >
 
using ChildAllCIter = DenseIter< const LeafNode, const ValueType, ChildAll >
 

Public Member Functions

 PointDataLeafNode ()
 Default constructor. More...
 
 ~PointDataLeafNode ()=default
 
 PointDataLeafNode (const PointDataLeafNode &other)
 Construct using deep copy of other PointDataLeafNode. More...
 
 PointDataLeafNode (const Coord &coords, const T &value=zeroVal< T >(), bool active=false)
 Construct using supplied origin, value and active status. More...
 
 PointDataLeafNode (const PointDataLeafNode &other, const Coord &coords, const T &value=zeroVal< T >(), bool active=false)
 
template<typename OtherValueType >
 PointDataLeafNode (const tools::PointIndexLeafNode< OtherValueType, Log2Dim > &other)
 
template<typename ValueType >
 PointDataLeafNode (const tree::LeafNode< ValueType, Log2Dim > &other, const T &value, TopologyCopy)
 
template<typename ValueType >
 PointDataLeafNode (const tree::LeafNode< ValueType, Log2Dim > &other, const T &, const T &, TopologyCopy)
 
const AttributeSetattributeSet () const
 Retrieve the attribute set. More...
 
void initializeAttributes (const Descriptor::Ptr &descriptor, const Index arrayLength)
 Create a new attribute set. Existing attributes will be removed. More...
 
void clearAttributes (const bool updateValueMask=true)
 Clear the attribute set. More...
 
bool hasAttribute (const size_t pos) const
 Returns true if an attribute with this index exists. More...
 
bool hasAttribute (const Name &attributeName) const
 Returns true if an attribute with this name exists. More...
 
AttributeArray::Ptr appendAttribute (const Descriptor &expected, Descriptor::Ptr &replacement, const size_t pos, const Index strideOrTotalSize=1, const bool constantStride=true)
 Append an attribute to the leaf. More...
 
void dropAttributes (const std::vector< size_t > &pos, const Descriptor &expected, Descriptor::Ptr &replacement)
 Drop list of attributes. More...
 
void reorderAttributes (const Descriptor::Ptr &replacement)
 Reorder attribute set. More...
 
void renameAttributes (const Descriptor &expected, Descriptor::Ptr &replacement)
 Rename attributes in attribute set (order must remain the same). More...
 
void compactAttributes ()
 Compact all attributes in attribute set. More...
 
void replaceAttributeSet (AttributeSet *attributeSet, bool allowMismatchingDescriptors=false)
 Replace the underlying attribute set with the given attributeSet. More...
 
void resetDescriptor (const Descriptor::Ptr &replacement)
 Replace the descriptor with a new one The new Descriptor must exactly match the old one. More...
 
void setOffsets (const std::vector< ValueType > &offsets, const bool updateValueMask=true)
 Sets all of the voxel offset values on this leaf, from the given vector of offsets. If updateValueMask is true, then the active value mask will be updated so voxels with points are active and empty voxels are inactive. More...
 
void validateOffsets () const
 Throws an error if the voxel values on this leaf are not monotonically increasing or within the bounds of the attribute arrays. More...
 
AttributeArrayattributeArray (const size_t pos)
 Read-write attribute array reference from index {. More...
 
const AttributeArrayattributeArray (const size_t pos) const
 
const AttributeArrayconstAttributeArray (const size_t pos) const
 
AttributeArrayattributeArray (const Name &attributeName)
 Read-write attribute array reference from name {. More...
 
const AttributeArrayattributeArray (const Name &attributeName) const
 
const AttributeArrayconstAttributeArray (const Name &attributeName) const
 
GroupHandle groupHandle (const AttributeSet::Descriptor::GroupIndex &index) const
 } More...
 
GroupHandle groupHandle (const Name &group) const
 Read-only group handle from group name. More...
 
GroupWriteHandle groupWriteHandle (const AttributeSet::Descriptor::GroupIndex &index)
 Read-write group handle from group index. More...
 
GroupWriteHandle groupWriteHandle (const Name &name)
 Read-write group handle from group name. More...
 
Index64 pointCount () const
 Compute the total point count for the leaf. More...
 
Index64 onPointCount () const
 Compute the total active (on) point count for the leaf. More...
 
Index64 offPointCount () const
 Compute the total inactive (off) point count for the leaf. More...
 
Index64 groupPointCount (const Name &groupName) const
 Compute the point count in a specific group for the leaf. More...
 
void updateValueMask ()
 Activate voxels with non-zero points, deactivate voxels with zero points. More...
 
void setOffsetOn (Index offset, const ValueType &val)
 
void setOffsetOnly (Index offset, const ValueType &val)
 
template<typename OtherType , Index OtherLog2Dim>
bool hasSameTopology (const PointDataLeafNode< OtherType, OtherLog2Dim > *other) const
 Return true if the given node (which may have a different ValueType than this node) has the same active value topology as this node. More...
 
bool operator== (const PointDataLeafNode &other) const
 
bool operator!= (const PointDataLeafNode &other) const
 
void addLeaf (PointDataLeafNode *)
 
template<typename AccessorT >
void addLeafAndCache (PointDataLeafNode *, AccessorT &)
 
void readTopology (std::istream &is, bool fromHalf=false)
 
void writeTopology (std::ostream &os, bool toHalf=false) const
 
Index buffers () const
 
void readBuffers (std::istream &is, bool fromHalf=false)
 
void readBuffers (std::istream &is, const CoordBBox &, bool fromHalf=false)
 
void writeBuffers (std::ostream &os, bool toHalf=false) const
 
Index64 memUsage () const
 
void evalActiveBoundingBox (CoordBBox &bbox, bool visitVoxels=true) const
 
CoordBBox getNodeBoundingBox () const
 Return the bounding box of this node, i.e., the full index space spanned by this leaf node. More...
 
void assertNonmodifiable ()
 
void assertNonModifiableUnlessZero (const ValueType &value)
 
void setActiveState (const Coord &xyz, bool on)
 
void setActiveState (Index offset, bool on)
 
void setValueOnly (const Coord &, const ValueType &)
 
void setValueOnly (Index, const ValueType &)
 
void setValueOff (const Coord &xyz)
 
void setValueOff (Index offset)
 
void setValueOff (const Coord &, const ValueType &)
 
void setValueOff (Index, const ValueType &)
 
void setValueOn (const Coord &xyz)
 
void setValueOn (Index offset)
 
void setValueOn (const Coord &, const ValueType &)
 
void setValueOn (Index, const ValueType &)
 
void setValue (const Coord &, const ValueType &)
 
void setValuesOn ()
 
void setValuesOff ()
 
template<typename ModifyOp >
void modifyValue (Index, const ModifyOp &)
 
template<typename ModifyOp >
void modifyValue (const Coord &, const ModifyOp &)
 
template<typename ModifyOp >
void modifyValueAndActiveState (const Coord &, const ModifyOp &)
 
void clip (const CoordBBox &, const ValueType &value)
 
void fill (const CoordBBox &, const ValueType &, bool)
 
void fill (const ValueType &value)
 
void fill (const ValueType &, bool)
 
template<typename AccessorT >
void setValueOnlyAndCache (const Coord &, const ValueType &, AccessorT &)
 
template<typename ModifyOp , typename AccessorT >
void modifyValueAndActiveStateAndCache (const Coord &, const ModifyOp &, AccessorT &)
 
template<typename AccessorT >
void setValueOffAndCache (const Coord &, const ValueType &, AccessorT &)
 
template<typename AccessorT >
void setActiveStateAndCache (const Coord &xyz, bool on, AccessorT &parent)
 
void resetBackground (const ValueType &, const ValueType &newBackground)
 
void signedFloodFill (const ValueType &)
 
void signedFloodFill (const ValueType &, const ValueType &)
 
void negate ()
 
ValueVoxelCIter beginValueVoxel (const Coord &ijk) const
 Leaf value voxel iterator. More...
 
IndexAllIter beginIndexAll () const
 Leaf index iterator. More...
 
IndexOnIter beginIndexOn () const
 
IndexOffIter beginIndexOff () const
 
template<typename IterT , typename FilterT >
IndexIter< IterT, FilterT > beginIndex (const FilterT &filter) const
 
template<typename FilterT >
IndexIter< ValueAllCIter, FilterT > beginIndexAll (const FilterT &filter) const
 Filtered leaf index iterator. More...
 
template<typename FilterT >
IndexIter< ValueOnCIter, FilterT > beginIndexOn (const FilterT &filter) const
 
template<typename FilterT >
IndexIter< ValueOffCIter, FilterT > beginIndexOff (const FilterT &filter) const
 
IndexVoxelIter beginIndexVoxel (const Coord &ijk) const
 Leaf index iterator from voxel. More...
 
template<typename FilterT >
IndexIter< ValueVoxelCIter,
FilterT > 
beginIndexVoxel (const Coord &ijk, const FilterT &filter) const
 Filtered leaf index iterator from voxel. More...
 
ValueOnCIter cbeginValueOn () const
 
ValueOnCIter beginValueOn () const
 
ValueOnIter beginValueOn ()
 
ValueOffCIter cbeginValueOff () const
 
ValueOffCIter beginValueOff () const
 
ValueOffIter beginValueOff ()
 
ValueAllCIter cbeginValueAll () const
 
ValueAllCIter beginValueAll () const
 
ValueAllIter beginValueAll ()
 
ValueOnCIter cendValueOn () const
 
ValueOnCIter endValueOn () const
 
ValueOnIter endValueOn ()
 
ValueOffCIter cendValueOff () const
 
ValueOffCIter endValueOff () const
 
ValueOffIter endValueOff ()
 
ValueAllCIter cendValueAll () const
 
ValueAllCIter endValueAll () const
 
ValueAllIter endValueAll ()
 
ChildOnCIter cbeginChildOn () const
 
ChildOnCIter beginChildOn () const
 
ChildOnIter beginChildOn ()
 
ChildOffCIter cbeginChildOff () const
 
ChildOffCIter beginChildOff () const
 
ChildOffIter beginChildOff ()
 
ChildAllCIter cbeginChildAll () const
 
ChildAllCIter beginChildAll () const
 
ChildAllIter beginChildAll ()
 
ChildOnCIter cendChildOn () const
 
ChildOnCIter endChildOn () const
 
ChildOnIter endChildOn ()
 
ChildOffCIter cendChildOff () const
 
ChildOffCIter endChildOff () const
 
ChildOffIter endChildOff ()
 
ChildAllCIter cendChildAll () const
 
ChildAllCIter endChildAll () const
 
ChildAllIter endChildAll ()
 
template<typename ValueIterT , typename FilterT >
IndexIter< ValueIterT, FilterT > beginIndex (const FilterT &filter) const
 
PointDataLeafNodetouchLeaf (const Coord &)
 Return a pointer to this node. More...
 
template<typename AccessorT >
PointDataLeafNodetouchLeafAndCache (const Coord &, AccessorT &)
 Return a pointer to this node. More...
 
template<typename NodeT , typename AccessorT >
NodeT * probeNodeAndCache (const Coord &, AccessorT &)
 Return a pointer to this node. More...
 
PointDataLeafNodeprobeLeaf (const Coord &)
 Return a pointer to this node. More...
 
template<typename AccessorT >
PointDataLeafNodeprobeLeafAndCache (const Coord &, AccessorT &)
 Return a pointer to this node. More...
 
const PointDataLeafNodeprobeConstLeaf (const Coord &) const
 Return a pointer to this node. More...
 
template<typename AccessorT >
const PointDataLeafNodeprobeConstLeafAndCache (const Coord &, AccessorT &) const
 Return a pointer to this node. More...
 
template<typename AccessorT >
const PointDataLeafNodeprobeLeafAndCache (const Coord &, AccessorT &) const
 Return a pointer to this node. More...
 
const PointDataLeafNodeprobeLeaf (const Coord &) const
 Return a pointer to this node. More...
 
template<typename NodeT , typename AccessorT >
const NodeT * probeConstNodeAndCache (const Coord &, AccessorT &) const
 Return a pointer to this node. More...
 
- Public Member Functions inherited from openvdb::OPENVDB_VERSION_NAME::tree::LeafNode< T, Log2Dim >
 LeafNode ()
 Default constructor. More...
 
 LeafNode (const Coord &coords, const ValueType &value=zeroVal< ValueType >(), bool active=false)
 Constructor. More...
 
 LeafNode (const LeafNode &)
 Deep copy constructor. More...
 
LeafNodeoperator= (const LeafNode &)=default
 Deep assignment operator. More...
 
template<typename OtherValueType >
 LeafNode (const LeafNode< OtherValueType, Log2Dim > &other)
 Value conversion copy constructor. More...
 
template<typename OtherValueType >
 LeafNode (const LeafNode< OtherValueType, Log2Dim > &other, const ValueType &offValue, const ValueType &onValue, TopologyCopy)
 Topology copy constructor. More...
 
template<typename OtherValueType >
 LeafNode (const LeafNode< OtherValueType, Log2Dim > &other, const ValueType &background, TopologyCopy)
 Topology copy constructor. More...
 
 ~LeafNode ()
 Destructor. More...
 
Index64 onVoxelCount () const
 Return the number of voxels marked On. More...
 
Index64 offVoxelCount () const
 Return the number of voxels marked Off. More...
 
Index64 onLeafVoxelCount () const
 
Index64 offLeafVoxelCount () const
 
bool isEmpty () const
 Return true if this node has no active voxels. More...
 
bool isDense () const
 Return true if this node contains only active voxels. More...
 
Index64 memUsage () const
 Return the memory in bytes occupied by this node. More...
 
void evalActiveBoundingBox (CoordBBox &bbox, bool visitVoxels=true) const
 
CoordBBox getNodeBoundingBox () const
 Return the bounding box of this node, i.e., the full index space spanned by this leaf node. More...
 
void setOrigin (const Coord &origin)
 Set the grid index coordinates of this node's local origin. More...
 
Coord offsetToGlobalCoord (Index n) const
 Return the global coordinates for a linear table offset. More...
 
std::string str () const
 Return a string representation of this node. More...
 
template<typename OtherType , Index OtherLog2Dim>
bool hasSameTopology (const LeafNode< OtherType, OtherLog2Dim > *other) const
 Return true if the given node (which may have a different ValueType than this node) has the same active value topology as this node. More...
 
bool operator== (const LeafNode &other) const
 Check for buffer, state and origin equivalence. More...
 
bool operator!= (const LeafNode &other) const
 
ValueOnCIter cbeginValueOn () const
 
ValueOnCIter beginValueOn () const
 
ValueOnIter beginValueOn ()
 
ValueOffCIter cbeginValueOff () const
 
ValueOffCIter beginValueOff () const
 
ValueOffIter beginValueOff ()
 
ValueAllCIter cbeginValueAll () const
 
ValueAllCIter beginValueAll () const
 
ValueAllIter beginValueAll ()
 
ValueOnCIter cendValueOn () const
 
ValueOnCIter endValueOn () const
 
ValueOnIter endValueOn ()
 
ValueOffCIter cendValueOff () const
 
ValueOffCIter endValueOff () const
 
ValueOffIter endValueOff ()
 
ValueAllCIter cendValueAll () const
 
ValueAllCIter endValueAll () const
 
ValueAllIter endValueAll ()
 
ChildOnCIter cbeginChildOn () const
 
ChildOnCIter beginChildOn () const
 
ChildOnIter beginChildOn ()
 
ChildOffCIter cbeginChildOff () const
 
ChildOffCIter beginChildOff () const
 
ChildOffIter beginChildOff ()
 
ChildAllCIter cbeginChildAll () const
 
ChildAllCIter beginChildAll () const
 
ChildAllIter beginChildAll ()
 
ChildOnCIter cendChildOn () const
 
ChildOnCIter endChildOn () const
 
ChildOnIter endChildOn ()
 
ChildOffCIter cendChildOff () const
 
ChildOffCIter endChildOff () const
 
ChildOffIter endChildOff ()
 
ChildAllCIter cendChildAll () const
 
ChildAllCIter endChildAll () const
 
ChildAllIter endChildAll ()
 
void swap (Buffer &other)
 Exchange this node's data buffer with the given data buffer without changing the active states of the values. More...
 
const Bufferbuffer () const
 
Bufferbuffer ()
 
void readTopology (std::istream &is, bool fromHalf=false)
 Read in just the topology. More...
 
void writeTopology (std::ostream &os, bool toHalf=false) const
 Write out just the topology. More...
 
void readBuffers (std::istream &is, bool fromHalf=false)
 Read buffers from a stream. More...
 
void readBuffers (std::istream &is, const CoordBBox &bbox, bool fromHalf=false)
 Read buffers that intersect the given bounding box. More...
 
void writeBuffers (std::ostream &os, bool toHalf=false) const
 Write buffers to a stream. More...
 
size_t streamingSize (bool toHalf=false) const
 
const ValueTypegetValue (const Coord &xyz) const
 Return the value of the voxel at the given coordinates. More...
 
const ValueTypegetValue (Index offset) const
 Return the value of the voxel at the given linear offset. More...
 
bool probeValue (const Coord &xyz, ValueType &val) const
 Return true if the voxel at the given coordinates is active. More...
 
bool probeValue (Index offset, ValueType &val) const
 Return true if the voxel at the given offset is active. More...
 
void setActiveState (const Coord &xyz, bool on)
 Set the active state of the voxel at the given coordinates but don't change its value. More...
 
void setActiveState (Index offset, bool on)
 Set the active state of the voxel at the given offset but don't change its value. More...
 
void setValueOnly (const Coord &xyz, const ValueType &val)
 Set the value of the voxel at the given coordinates but don't change its active state. More...
 
void setValueOnly (Index offset, const ValueType &val)
 Set the value of the voxel at the given offset but don't change its active state. More...
 
void setValueOff (const Coord &xyz)
 Mark the voxel at the given coordinates as inactive but don't change its value. More...
 
void setValueOff (Index offset)
 Mark the voxel at the given offset as inactive but don't change its value. More...
 
void setValueOff (const Coord &xyz, const ValueType &val)
 Set the value of the voxel at the given coordinates and mark the voxel as inactive. More...
 
void setValueOff (Index offset, const ValueType &val)
 Set the value of the voxel at the given offset and mark the voxel as inactive. More...
 
void setValueOn (const Coord &xyz)
 Mark the voxel at the given coordinates as active but don't change its value. More...
 
void setValueOn (Index offset)
 Mark the voxel at the given offset as active but don't change its value. More...
 
void setValueOn (const Coord &xyz, const ValueType &val)
 Set the value of the voxel at the given coordinates and mark the voxel as active. More...
 
void setValue (const Coord &xyz, const ValueType &val)
 Set the value of the voxel at the given coordinates and mark the voxel as active. More...
 
void setValueOn (Index offset, const ValueType &val)
 Set the value of the voxel at the given offset and mark the voxel as active. More...
 
template<typename ModifyOp >
void modifyValue (Index offset, const ModifyOp &op)
 Apply a functor to the value of the voxel at the given offset and mark the voxel as active. More...
 
template<typename ModifyOp >
void modifyValue (const Coord &xyz, const ModifyOp &op)
 Apply a functor to the value of the voxel at the given coordinates and mark the voxel as active. More...
 
template<typename ModifyOp >
void modifyValueAndActiveState (const Coord &xyz, const ModifyOp &op)
 Apply a functor to the voxel at the given coordinates. More...
 
void setValuesOn ()
 Mark all voxels as active but don't change their values. More...
 
void setValuesOff ()
 Mark all voxels as inactive but don't change their values. More...
 
bool isValueOn (const Coord &xyz) const
 Return true if the voxel at the given coordinates is active. More...
 
bool isValueOn (Index offset) const
 Return true if the voxel at the given offset is active. More...
 
void clip (const CoordBBox &, const ValueType &background)
 Set all voxels that lie outside the given axis-aligned box to the background. More...
 
void fill (const CoordBBox &bbox, const ValueType &, bool active=true)
 Set all voxels within an axis-aligned box to the specified value and active state. More...
 
void denseFill (const CoordBBox &bbox, const ValueType &value, bool active=true)
 Set all voxels within an axis-aligned box to the specified value and active state. More...
 
void fill (const ValueType &value)
 Set all voxels to the specified value but don't change their active states. More...
 
void fill (const ValueType &value, bool active)
 Set all voxels to the specified value and active state. More...
 
template<typename DenseT >
void copyToDense (const CoordBBox &bbox, DenseT &dense) const
 Copy into a dense grid the values of the voxels that lie within a given bounding box. More...
 
template<typename DenseT >
void copyFromDense (const CoordBBox &bbox, const DenseT &dense, const ValueType &background, const ValueType &tolerance)
 Copy from a dense grid into this node the values of the voxels that lie within a given bounding box. More...
 
template<typename AccessorT >
const ValueTypegetValueAndCache (const Coord &xyz, AccessorT &) const
 Return the value of the voxel at the given coordinates. More...
 
template<typename AccessorT >
bool isValueOnAndCache (const Coord &xyz, AccessorT &) const
 Return true if the voxel at the given coordinates is active. More...
 
template<typename AccessorT >
void setValueAndCache (const Coord &xyz, const ValueType &val, AccessorT &)
 Change the value of the voxel at the given coordinates and mark it as active. More...
 
template<typename AccessorT >
void setValueOnlyAndCache (const Coord &xyz, const ValueType &val, AccessorT &)
 Change the value of the voxel at the given coordinates but preserve its state. More...
 
template<typename ModifyOp , typename AccessorT >
void modifyValueAndCache (const Coord &xyz, const ModifyOp &op, AccessorT &)
 Apply a functor to the value of the voxel at the given coordinates and mark the voxel as active. More...
 
template<typename ModifyOp , typename AccessorT >
void modifyValueAndActiveStateAndCache (const Coord &xyz, const ModifyOp &op, AccessorT &)
 
template<typename AccessorT >
void setValueOffAndCache (const Coord &xyz, const ValueType &value, AccessorT &)
 Change the value of the voxel at the given coordinates and mark it as inactive. More...
 
template<typename AccessorT >
void setActiveStateAndCache (const Coord &xyz, bool on, AccessorT &)
 Set the active state of the voxel at the given coordinates without changing its value. More...
 
template<typename AccessorT >
bool probeValueAndCache (const Coord &xyz, ValueType &val, AccessorT &) const
 Return true if the voxel at the given coordinates is active and return the voxel value in val. More...
 
template<typename AccessorT >
const ValueTypegetValue (const Coord &xyz, bool &state, int &level, AccessorT &) const
 Return the value of the voxel at the given coordinates and return its active state and level (i.e., 0) in state and level. More...
 
const ValueTypegetFirstValue () const
 Return a const reference to the first value in the buffer. More...
 
const ValueTypegetLastValue () const
 Return a const reference to the last value in the buffer. More...
 
void resetBackground (const ValueType &oldBackground, const ValueType &newBackground)
 Replace inactive occurrences of oldBackground with newBackground, and inactive occurrences of -oldBackground with -newBackground. More...
 
void negate ()
 
void voxelizeActiveTiles (bool=true)
 No-op. More...
 
template<MergePolicy Policy>
void merge (const LeafNode &)
 
template<MergePolicy Policy>
void merge (const ValueType &tileValue, bool tileActive)
 
template<MergePolicy Policy>
void merge (const LeafNode &other, const ValueType &, const ValueType &)
 
template<typename OtherType >
void topologyUnion (const LeafNode< OtherType, Log2Dim > &other)
 Union this node's set of active values with the active values of the other node, whose ValueType may be different. So a resulting voxel will be active if either of the original voxels were active. More...
 
template<typename OtherType >
void topologyIntersection (const LeafNode< OtherType, Log2Dim > &other, const ValueType &)
 Intersect this node's set of active values with the active values of the other node, whose ValueType may be different. So a resulting voxel will be active only if both of the original voxels were active. More...
 
template<typename OtherType >
void topologyDifference (const LeafNode< OtherType, Log2Dim > &other, const ValueType &)
 Difference this node's set of active values with the active values of the other node, whose ValueType may be different. So a resulting voxel will be active only if the original voxel is active in this LeafNode and inactive in the other LeafNode. More...
 
template<typename CombineOp >
void combine (const LeafNode &other, CombineOp &op)
 
template<typename CombineOp >
void combine (const ValueType &value, bool valueIsActive, CombineOp &op)
 
template<typename CombineOp , typename OtherType >
void combine2 (const LeafNode &other, const OtherType &, bool valueIsActive, CombineOp &)
 
template<typename CombineOp , typename OtherNodeT >
void combine2 (const ValueType &, const OtherNodeT &other, bool valueIsActive, CombineOp &)
 
template<typename CombineOp , typename OtherNodeT >
void combine2 (const LeafNode &b0, const OtherNodeT &b1, CombineOp &)
 
template<typename BBoxOp >
void visitActiveBBox (BBoxOp &) const
 Calls the templated functor BBoxOp with bounding box information. An additional level argument is provided to the callback. More...
 
template<typename VisitorOp >
void visit (VisitorOp &)
 
template<typename VisitorOp >
void visit (VisitorOp &) const
 
template<typename OtherLeafNodeType , typename VisitorOp >
void visit2Node (OtherLeafNodeType &other, VisitorOp &)
 
template<typename OtherLeafNodeType , typename VisitorOp >
void visit2Node (OtherLeafNodeType &other, VisitorOp &) const
 
template<typename IterT , typename VisitorOp >
void visit2 (IterT &otherIter, VisitorOp &, bool otherIsLHS=false)
 
template<typename IterT , typename VisitorOp >
void visit2 (IterT &otherIter, VisitorOp &, bool otherIsLHS=false) const
 
void addTile (Index level, const Coord &, const ValueType &, bool)
 
void addTile (Index offset, const ValueType &, bool)
 
template<typename AccessorT >
void addTileAndCache (Index, const Coord &, const ValueType &, bool, AccessorT &)
 
bool isConstant (ValueType &firstValue, bool &state, const ValueType &tolerance=zeroVal< ValueType >()) const
 
bool isConstant (ValueType &minValue, ValueType &maxValue, bool &state, const ValueType &tolerance=zeroVal< ValueType >()) const
 
ValueType medianAll (ValueType *tmp=nullptr) const
 Computes the median value of all the active AND inactive voxels in this node. More...
 
Index medianOn (ValueType &value, ValueType *tmp=nullptr) const
 Computes the median value of all the active voxels in this node. More...
 
Index medianOff (ValueType &value, ValueType *tmp=nullptr) const
 Computes the median value of all the inactive voxels in this node. More...
 
bool isInactive () const
 Return true if all of this node's values are inactive. More...
 
bool isValueMaskOn (Index n) const
 
bool isValueMaskOn () const
 
bool isValueMaskOff (Index n) const
 
bool isValueMaskOff () const
 
const NodeMaskTypegetValueMask () const
 
NodeMaskTypegetValueMask ()
 
const NodeMaskTypevalueMask () const
 
void setValueMask (const NodeMaskType &mask)
 
bool isChildMaskOn (Index) const
 
bool isChildMaskOff (Index) const
 
bool isChildMaskOff () const
 
const Coord & origin () const
 Return the grid index coordinates of this node's local origin. More...
 
void getOrigin (Coord &origin) const
 Return the grid index coordinates of this node's local origin. More...
 
void getOrigin (Int32 &x, Int32 &y, Int32 &z) const
 Return the grid index coordinates of this node's local origin. More...
 
void prune (const ValueType &=zeroVal< ValueType >())
 This function exists only to enable template instantiation. More...
 
void addLeaf (LeafNode *)
 This function exists only to enable template instantiation. More...
 
template<typename AccessorT >
void addLeafAndCache (LeafNode *, AccessorT &)
 This function exists only to enable template instantiation. More...
 
template<typename NodeT >
NodeT * stealNode (const Coord &, const ValueType &, bool)
 This function exists only to enable template instantiation. More...
 
template<typename NodeT >
NodeT * probeNode (const Coord &)
 This function exists only to enable template instantiation. More...
 
template<typename NodeT >
const NodeT * probeConstNode (const Coord &) const
 This function exists only to enable template instantiation. More...
 
template<typename ArrayT >
void getNodes (ArrayT &) const
 This function exists only to enable template instantiation. More...
 
template<typename ArrayT >
void stealNodes (ArrayT &, const ValueType &, bool)
 This function exists only to enable template instantiation. More...
 
LeafNodetouchLeaf (const Coord &)
 Return a pointer to this node. More...
 
template<typename AccessorT >
LeafNodetouchLeafAndCache (const Coord &, AccessorT &)
 Return a pointer to this node. More...
 
template<typename NodeT , typename AccessorT >
NodeT * probeNodeAndCache (const Coord &, AccessorT &)
 Return a pointer to this node. More...
 
LeafNodeprobeLeaf (const Coord &)
 Return a pointer to this node. More...
 
template<typename AccessorT >
LeafNodeprobeLeafAndCache (const Coord &, AccessorT &)
 Return a pointer to this node. More...
 
const LeafNodeprobeConstLeaf (const Coord &) const
 Return a pointer to this node. More...
 
template<typename AccessorT >
const LeafNodeprobeConstLeafAndCache (const Coord &, AccessorT &) const
 Return a pointer to this node. More...
 
template<typename AccessorT >
const LeafNodeprobeLeafAndCache (const Coord &, AccessorT &) const
 Return a pointer to this node. More...
 
const LeafNodeprobeLeaf (const Coord &) const
 Return a pointer to this node. More...
 
template<typename NodeT , typename AccessorT >
const NodeT * probeConstNodeAndCache (const Coord &, AccessorT &) const
 Return a pointer to this node. More...
 

Protected Types

using ChildOn = typename BaseLeaf::ChildOn
 
using ChildOff = typename BaseLeaf::ChildOff
 
using ChildAll = typename BaseLeaf::ChildAll
 
using MaskOnIterator = typename NodeMaskType::OnIterator
 
using MaskOffIterator = typename NodeMaskType::OffIterator
 
using MaskDenseIterator = typename NodeMaskType::DenseIterator
 
- Protected Types inherited from openvdb::OPENVDB_VERSION_NAME::tree::LeafNode< T, Log2Dim >
using MaskOnIterator = typename NodeMaskType::OnIterator
 
using MaskOffIterator = typename NodeMaskType::OffIterator
 
using MaskDenseIterator = typename NodeMaskType::DenseIterator
 

Friends

class ::TestPointDataLeaf
 
template<typename , Index >
class PointDataLeafNode
 
class tree::IteratorBase< MaskOnIterator, PointDataLeafNode >
 
class tree::IteratorBase< MaskOffIterator, PointDataLeafNode >
 
class tree::IteratorBase< MaskDenseIterator, PointDataLeafNode >
 

Additional Inherited Members

- Static Public Member Functions inherited from openvdb::OPENVDB_VERSION_NAME::tree::LeafNode< T, Log2Dim >
static Index log2dim ()
 Return log2 of the dimension of this LeafNode, e.g. 3 if dimensions are 8^3. More...
 
static Index dim ()
 Return the number of voxels in each coordinate dimension. More...
 
static Index size ()
 Return the total number of voxels represented by this LeafNode. More...
 
static Index numValues ()
 Return the total number of voxels represented by this LeafNode. More...
 
static Index getLevel ()
 Return the level of this node, which by definition is zero for LeafNodes. More...
 
static void getNodeLog2Dims (std::vector< Index > &dims)
 Append the Log2Dim of this LeafNode to the specified vector. More...
 
static Index getChildDim ()
 Return the dimension of child nodes of this LeafNode, which is one for voxels. More...
 
static Index32 leafCount ()
 Return the leaf count for this node, which is one. More...
 
static Index32 nonLeafCount ()
 Return the non-leaf count for this node, which is zero. More...
 
static Index64 onTileCount ()
 
static Index64 offTileCount ()
 
static Index coordToOffset (const Coord &xyz)
 Return the linear table offset of the given global or local coordinates. More...
 
static Coord offsetToLocalCoord (Index n)
 Return the local coordinates for a linear table offset, where offset 0 has coordinates (0, 0, 0). More...
 
static Index getValueLevel (const Coord &)
 Return the level (i.e., 0) at which leaf node values reside. More...
 
static bool hasActiveTiles ()
 Return false since leaf nodes never contain tiles. More...
 
template<typename AccessorT >
static Index getValueLevelAndCache (const Coord &, AccessorT &)
 Return the LEVEL (=0) at which leaf node values reside. More...
 
- Static Public Attributes inherited from openvdb::OPENVDB_VERSION_NAME::tree::LeafNode< T, Log2Dim >
static const Index LOG2DIM = Log2Dim
 
static const Index TOTAL = Log2Dim
 
static const Index DIM = 1 << TOTAL
 
static const Index NUM_VALUES = 1 << 3 * Log2Dim
 
static const Index NUM_VOXELS = NUM_VALUES
 
static const Index SIZE = NUM_VALUES
 
static const Index LEVEL = 0
 
- Protected Member Functions inherited from openvdb::OPENVDB_VERSION_NAME::tree::LeafNode< T, Log2Dim >
void setValueMask (Index n, bool on)
 
void setValueMaskOn (Index n)
 
void setValueMaskOff (Index n)
 
void skipCompressedValues (bool seekable, std::istream &, bool fromHalf)
 
- Static Protected Member Functions inherited from openvdb::OPENVDB_VERSION_NAME::tree::LeafNode< T, Log2Dim >
static void evalNodeOrigin (Coord &xyz)
 Compute the origin of the leaf node that contains the voxel with the given coordinates. More...
 
template<typename NodeT , typename VisitorOp , typename ChildAllIterT >
static void doVisit (NodeT &, VisitorOp &)
 
template<typename NodeT , typename OtherNodeT , typename VisitorOp , typename ChildAllIterT , typename OtherChildAllIterT >
static void doVisit2Node (NodeT &self, OtherNodeT &other, VisitorOp &)
 
template<typename NodeT , typename VisitorOp , typename ChildAllIterT , typename OtherChildAllIterT >
static void doVisit2 (NodeT &self, OtherChildAllIterT &, VisitorOp &, bool otherIsLHS)
 

Detailed Description

template<typename T, Index Log2Dim>
class openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >

Definition at line 212 of file PointDataGrid.h.

Member Typedef Documentation

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::BaseLeaf = tree::LeafNode<T, Log2Dim>

Definition at line 281 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ChildAll = typename BaseLeaf::ChildAll
protected

Definition at line 618 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ChildAllCIter = typename BaseLeaf::template DenseIter< const PointDataLeafNode, const ValueType, ChildAll>

Definition at line 687 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ChildAllIter = typename BaseLeaf::template DenseIter< PointDataLeafNode, ValueType, ChildAll>

Definition at line 685 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ChildOff = typename BaseLeaf::ChildOff
protected

Definition at line 617 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ChildOffCIter = typename BaseLeaf::template ChildIter< MaskOffIterator, const PointDataLeafNode, ChildOff>

Definition at line 683 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ChildOffIter = typename BaseLeaf::template ChildIter< MaskOffIterator, PointDataLeafNode, ChildOff>

Definition at line 681 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ChildOn = typename BaseLeaf::ChildOn
protected

Definition at line 616 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ChildOnCIter = typename BaseLeaf::template ChildIter< MaskOnIterator, const PointDataLeafNode, ChildOn>

Definition at line 679 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ChildOnIter = typename BaseLeaf::template ChildIter< MaskOnIterator, PointDataLeafNode, ChildOn>

Definition at line 677 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::Descriptor = AttributeSet::Descriptor

Definition at line 274 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::IndexAllIter = IndexIter<ValueAllCIter, NullFilter>

Definition at line 691 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::IndexArray = std::vector<ValueType>

Definition at line 272 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::IndexOffIter = IndexIter<ValueOffCIter, NullFilter>

Definition at line 693 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::IndexOnIter = IndexIter<ValueOnCIter, NullFilter>

Definition at line 692 of file PointDataGrid.h.

Definition at line 690 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::LeafNodeType = PointDataLeafNode<T, Log2Dim>

Definition at line 267 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::MaskDenseIterator = typename NodeMaskType::DenseIterator
protected

Definition at line 622 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::MaskOffIterator = typename NodeMaskType::OffIterator
protected

Definition at line 621 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::MaskOnIterator = typename NodeMaskType::OnIterator
protected

Definition at line 620 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::NodeMaskType = util::NodeMask<Log2Dim>

Definition at line 282 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::Ptr = std::shared_ptr<PointDataLeafNode>

Definition at line 268 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueAll = typename BaseLeaf::ValueAll

Definition at line 609 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueAllCIter = typename BaseLeaf::template ValueIter< MaskDenseIterator,const PointDataLeafNode,const ValueType,ValueAll>

Definition at line 675 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueAllIter = typename BaseLeaf::template ValueIter< MaskDenseIterator, PointDataLeafNode, const ValueType, ValueAll>

Definition at line 673 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueOff = typename BaseLeaf::ValueOff

Definition at line 608 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueOffCIter = typename BaseLeaf::template ValueIter< MaskOffIterator,const PointDataLeafNode,const ValueType,ValueOff>

Definition at line 671 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueOffIter = typename BaseLeaf::template ValueIter< MaskOffIterator, PointDataLeafNode, const ValueType, ValueOff>

Definition at line 669 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueOn = typename BaseLeaf::ValueOn

Definition at line 607 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueOnCIter = typename BaseLeaf::template ValueIter< MaskOnIterator, const PointDataLeafNode, const ValueType, ValueOn>

Definition at line 667 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueOnIter = typename BaseLeaf::template ValueIter< MaskOnIterator, PointDataLeafNode, const ValueType, ValueOn>

Definition at line 665 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueType = T

Definition at line 270 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
using openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::ValueTypePair = std::pair<ValueType, ValueType>

Definition at line 271 of file PointDataGrid.h.

Constructor & Destructor Documentation

template<typename T, Index Log2Dim>
openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::PointDataLeafNode ( )
inline

Default constructor.

Definition at line 293 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::~PointDataLeafNode ( )
default
template<typename T, Index Log2Dim>
openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::PointDataLeafNode ( const PointDataLeafNode< T, Log2Dim > &  other)
inlineexplicit

Construct using deep copy of other PointDataLeafNode.

Definition at line 299 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::PointDataLeafNode ( const Coord &  coords,
const T &  value = zeroVal<T>(),
bool  active = false 
)
inlineexplicit

Construct using supplied origin, value and active status.

Definition at line 305 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::PointDataLeafNode ( const PointDataLeafNode< T, Log2Dim > &  other,
const Coord &  coords,
const T &  value = zeroVal<T>(),
bool  active = false 
)
inline

Construct using supplied origin, value and active status use attribute map from another PointDataLeafNode

Definition at line 311 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename OtherValueType >
openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::PointDataLeafNode ( const tools::PointIndexLeafNode< OtherValueType, Log2Dim > &  other)
inline

Definition at line 321 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename ValueType >
openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::PointDataLeafNode ( const tree::LeafNode< ValueType, Log2Dim > &  other,
const T &  value,
TopologyCopy   
)
inline

Definition at line 328 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename ValueType >
openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::PointDataLeafNode ( const tree::LeafNode< ValueType, Log2Dim > &  other,
const T &  ,
const T &  ,
TopologyCopy   
)
inline

Definition at line 335 of file PointDataGrid.h.

Member Function Documentation

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::addLeaf ( PointDataLeafNode< T, Log2Dim > *  )
inline

Definition at line 464 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename AccessorT >
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::addLeafAndCache ( PointDataLeafNode< T, Log2Dim > *  ,
AccessorT &   
)
inline

Definition at line 466 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
AttributeArray::Ptr openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::appendAttribute ( const Descriptor expected,
Descriptor::Ptr &  replacement,
const size_t  pos,
const Index  strideOrTotalSize = 1,
const bool  constantStride = true 
)
inline

Append an attribute to the leaf.

Parameters
expectedExisting descriptor is expected to match this parameter.
replacementNew descriptor to replace the existing one.
posIndex of the new attribute in the descriptor replacement.
strideOrTotalSizeStride of the attribute array (if constantStride), total size otherwise
constantStrideif false, stride is interpreted as total size of the array

Definition at line 832 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::assertNonmodifiable ( )
inline

Definition at line 530 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::assertNonModifiableUnlessZero ( const ValueType value)
inline

Definition at line 537 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
AttributeArray & openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::attributeArray ( const size_t  pos)
inline

Read-write attribute array reference from index {.

Definition at line 934 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
const AttributeArray & openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::attributeArray ( const size_t  pos) const
inline

Definition at line 942 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
AttributeArray & openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::attributeArray ( const Name attributeName)
inline

Read-write attribute array reference from name {.

}

Definition at line 957 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
const AttributeArray & openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::attributeArray ( const Name attributeName) const
inline

Definition at line 966 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
const AttributeSet& openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::attributeSet ( ) const
inline

Retrieve the attribute set.

Definition at line 349 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildAllCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginChildAll ( ) const
inline

Definition at line 767 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildAllIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginChildAll ( )
inline

Definition at line 768 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOffCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginChildOff ( ) const
inline

Definition at line 764 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOffIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginChildOff ( )
inline

Definition at line 765 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOnCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginChildOn ( ) const
inline

Definition at line 761 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOnIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginChildOn ( )
inline

Definition at line 762 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename IterT , typename FilterT >
IndexIter<IterT, FilterT> openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndex ( const FilterT &  filter) const
template<typename T, Index Log2Dim>
template<typename ValueIterT , typename FilterT >
IndexIter<ValueIterT, FilterT> openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndex ( const FilterT &  filter) const
inline

Definition at line 1023 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
IndexAllIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndexAll ( ) const
inline

Leaf index iterator.

Definition at line 696 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename FilterT >
IndexIter<ValueAllCIter, FilterT> openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndexAll ( const FilterT &  filter) const
inline

Filtered leaf index iterator.

Definition at line 717 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
IndexOffIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndexOff ( ) const
inline

Definition at line 706 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename FilterT >
IndexIter<ValueOffCIter, FilterT> openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndexOff ( const FilterT &  filter) const
inline

Definition at line 727 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
IndexOnIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndexOn ( ) const
inline

Definition at line 701 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename FilterT >
IndexIter<ValueOnCIter, FilterT> openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndexOn ( const FilterT &  filter) const
inline

Definition at line 722 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
PointDataLeafNode< T, Log2Dim >::IndexVoxelIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndexVoxel ( const Coord &  ijk) const
inline

Leaf index iterator from voxel.

Definition at line 1058 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
template<typename FilterT >
IndexIter< ValueVoxelCIter, FilterT > openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginIndexVoxel ( const Coord &  ijk,
const FilterT &  filter 
) const
inline

Filtered leaf index iterator from voxel.

Definition at line 1067 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueAllCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginValueAll ( ) const
inline

Definition at line 747 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueAllIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginValueAll ( )
inline

Definition at line 748 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOffCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginValueOff ( ) const
inline

Definition at line 744 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOffIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginValueOff ( )
inline

Definition at line 745 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOnCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginValueOn ( ) const
inline

Definition at line 741 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOnIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginValueOn ( )
inline

Definition at line 742 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
ValueVoxelCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::beginValueVoxel ( const Coord &  ijk) const
inline

Leaf value voxel iterator.

Definition at line 1047 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
Index openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::buffers ( ) const
inline

Definition at line 1158 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildAllCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cbeginChildAll ( ) const
inline

Definition at line 766 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOffCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cbeginChildOff ( ) const
inline

Definition at line 763 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOnCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cbeginChildOn ( ) const
inline

Definition at line 760 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueAllCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cbeginValueAll ( ) const
inline

Definition at line 746 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOffCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cbeginValueOff ( ) const
inline

Definition at line 743 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOnCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cbeginValueOn ( ) const
inline

Definition at line 740 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildAllCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cendChildAll ( ) const
inline

Definition at line 776 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOffCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cendChildOff ( ) const
inline

Definition at line 773 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOnCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cendChildOn ( ) const
inline

Definition at line 770 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueAllCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cendValueAll ( ) const
inline

Definition at line 756 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOffCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cendValueOff ( ) const
inline

Definition at line 753 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOnCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::cendValueOn ( ) const
inline

Definition at line 750 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::clearAttributes ( const bool  updateValueMask = true)
inline

Clear the attribute set.

Definition at line 802 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::clip ( const CoordBBox &  ,
const ValueType value 
)
inline

Definition at line 574 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::compactAttributes ( )
inline

Compact all attributes in attribute set.

Definition at line 863 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
const AttributeArray & openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::constAttributeArray ( const size_t  pos) const
inline

Definition at line 950 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
const AttributeArray & openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::constAttributeArray ( const Name attributeName) const
inline

Definition at line 975 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::dropAttributes ( const std::vector< size_t > &  pos,
const Descriptor expected,
Descriptor::Ptr &  replacement 
)
inline

Drop list of attributes.

Parameters
posvector of attribute indices to drop
expectedExisting descriptor is expected to match this parameter.
replacementNew descriptor to replace the existing one.

Definition at line 841 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildAllCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endChildAll ( ) const
inline

Definition at line 777 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildAllIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endChildAll ( )
inline

Definition at line 778 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOffCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endChildOff ( ) const
inline

Definition at line 774 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOffIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endChildOff ( )
inline

Definition at line 775 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOnCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endChildOn ( ) const
inline

Definition at line 771 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ChildOnIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endChildOn ( )
inline

Definition at line 772 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueAllCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endValueAll ( ) const
inline

Definition at line 757 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueAllIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endValueAll ( )
inline

Definition at line 758 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOffCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endValueOff ( ) const
inline

Definition at line 754 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOffIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endValueOff ( )
inline

Definition at line 755 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOnCIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endValueOn ( ) const
inline

Definition at line 751 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
ValueOnIter openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::endValueOn ( )
inline

Definition at line 752 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::evalActiveBoundingBox ( CoordBBox &  bbox,
bool  visitVoxels = true 
) const
inline

Definition at line 1550 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::fill ( const CoordBBox &  bbox,
const ValueType value,
bool  active 
)
inline

Definition at line 1564 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::fill ( const ValueType value)
inline

Definition at line 577 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::fill ( const ValueType value,
bool  active 
)
inline

Definition at line 1588 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
CoordBBox openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::getNodeBoundingBox ( ) const
inline

Return the bounding box of this node, i.e., the full index space spanned by this leaf node.

Definition at line 1557 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
GroupHandle openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::groupHandle ( const AttributeSet::Descriptor::GroupIndex &  index) const
inline

}

Read-only group handle from group index

Definition at line 982 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
GroupHandle openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::groupHandle ( const Name group) const
inline

Read-only group handle from group name.

Definition at line 994 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
Index64 openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::groupPointCount ( const Name groupName) const
inline

Compute the point count in a specific group for the leaf.

Definition at line 1102 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
GroupWriteHandle openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::groupWriteHandle ( const AttributeSet::Descriptor::GroupIndex &  index)
inline

Read-write group handle from group index.

Definition at line 1002 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
GroupWriteHandle openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::groupWriteHandle ( const Name name)
inline

Read-write group handle from group name.

Definition at line 1014 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
bool openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::hasAttribute ( const size_t  pos) const
inline

Returns true if an attribute with this index exists.

Parameters
posIndex of the attribute

Definition at line 817 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
bool openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::hasAttribute ( const Name attributeName) const
inline

Returns true if an attribute with this name exists.

Parameters
attributeNameName of the attribute

Definition at line 824 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename OtherType , Index OtherLog2Dim>
bool openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::hasSameTopology ( const PointDataLeafNode< OtherType, OtherLog2Dim > *  other) const
inline

Return true if the given node (which may have a different ValueType than this node) has the same active value topology as this node.

Definition at line 451 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::initializeAttributes ( const Descriptor::Ptr &  descriptor,
const Index  arrayLength 
)
inline

Create a new attribute set. Existing attributes will be removed.

Definition at line 788 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
Index64 openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::memUsage ( ) const
inline

Definition at line 1543 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename ModifyOp >
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::modifyValue ( Index  ,
const ModifyOp &   
)
inline

Definition at line 565 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename ModifyOp >
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::modifyValue ( const Coord &  ,
const ModifyOp &   
)
inline

Definition at line 568 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename ModifyOp >
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::modifyValueAndActiveState ( const Coord &  ,
const ModifyOp &   
)
inline

Definition at line 571 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename ModifyOp , typename AccessorT >
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::modifyValueAndActiveStateAndCache ( const Coord &  ,
const ModifyOp &  ,
AccessorT &   
)
inline

Definition at line 584 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::negate ( )
inline

Definition at line 603 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
Index64 openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::offPointCount ( ) const
inline

Compute the total inactive (off) point count for the leaf.

Definition at line 1093 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
Index64 openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::onPointCount ( ) const
inline

Compute the total active (on) point count for the leaf.

Definition at line 1084 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
bool openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::operator!= ( const PointDataLeafNode< T, Log2Dim > &  other) const
inline

Definition at line 462 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
bool openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::operator== ( const PointDataLeafNode< T, Log2Dim > &  other) const
inline

Check for buffer, state and origin equivalence first. If this returns true, do a deeper comparison on the attribute set to check

Definition at line 457 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
Index64 openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::pointCount ( ) const
inline

Compute the total point count for the leaf.

Definition at line 1077 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
const PointDataLeafNode* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::probeConstLeaf ( const Coord &  ) const
inline

Return a pointer to this node.

Definition at line 489 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename AccessorT >
const PointDataLeafNode* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::probeConstLeafAndCache ( const Coord &  ,
AccessorT &   
) const
inline

Return a pointer to this node.

Definition at line 491 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename NodeT , typename AccessorT >
const NodeT* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::probeConstNodeAndCache ( const Coord &  ,
AccessorT &   
) const
inline

Return a pointer to this node.

Definition at line 496 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
PointDataLeafNode* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::probeLeaf ( const Coord &  )
inline

Return a pointer to this node.

Definition at line 482 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
const PointDataLeafNode* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::probeLeaf ( const Coord &  ) const
inline

Return a pointer to this node.

Definition at line 494 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename AccessorT >
PointDataLeafNode* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::probeLeafAndCache ( const Coord &  ,
AccessorT &   
)
inline

Return a pointer to this node.

Definition at line 484 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename AccessorT >
const PointDataLeafNode* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::probeLeafAndCache ( const Coord &  ,
AccessorT &   
) const
inline

Return a pointer to this node.

Definition at line 493 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename NodeT , typename AccessorT >
NodeT* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::probeNodeAndCache ( const Coord &  ,
AccessorT &   
)
inline

Return a pointer to this node.

Definition at line 475 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::readBuffers ( std::istream &  is,
bool  fromHalf = false 
)
inline

Definition at line 1170 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::readBuffers ( std::istream &  is,
const CoordBBox &  ,
bool  fromHalf = false 
)
inline

Definition at line 1177 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::readTopology ( std::istream &  is,
bool  fromHalf = false 
)
inline

Definition at line 1144 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::renameAttributes ( const Descriptor expected,
Descriptor::Ptr &  replacement 
)
inline

Rename attributes in attribute set (order must remain the same).

Parameters
expectedExisting descriptor is expected to match this parameter.
replacementNew descriptor to replace the existing one.

Definition at line 856 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::reorderAttributes ( const Descriptor::Ptr &  replacement)
inline

Reorder attribute set.

Parameters
replacementNew descriptor to replace the existing one.

Definition at line 849 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::replaceAttributeSet ( AttributeSet attributeSet,
bool  allowMismatchingDescriptors = false 
)
inline

Replace the underlying attribute set with the given attributeSet.

This leaf will assume ownership of the given attribute set. The descriptors must match and the voxel offsets values will need updating if the point order is different.

Exceptions
ValueErrorif allowMismatchingDescriptors is false and the descriptors do not match

Definition at line 873 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::resetBackground ( const ValueType ,
const ValueType newBackground 
)
inline

Definition at line 596 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::resetDescriptor ( const Descriptor::Ptr &  replacement)
inline

Replace the descriptor with a new one The new Descriptor must exactly match the old one.

Definition at line 888 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setActiveState ( const Coord &  xyz,
bool  on 
)
inline

Definition at line 541 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setActiveState ( Index  offset,
bool  on 
)
inline

Definition at line 542 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename AccessorT >
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setActiveStateAndCache ( const Coord &  xyz,
bool  on,
AccessorT &  parent 
)
inline

Definition at line 592 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setOffsetOn ( Index  offset,
const ValueType val 
)
inline

Definition at line 1129 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setOffsetOnly ( Index  offset,
const ValueType val 
)
inline

Definition at line 1137 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setOffsets ( const std::vector< ValueType > &  offsets,
const bool  updateValueMask = true 
)
inline

Sets all of the voxel offset values on this leaf, from the given vector of offsets. If updateValueMask is true, then the active value mask will be updated so voxels with points are active and empty voxels are inactive.

Definition at line 895 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValue ( const Coord &  ,
const ValueType  
)
inline

Definition at line 559 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOff ( const Coord &  xyz)
inline

Definition at line 547 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOff ( Index  offset)
inline

Definition at line 548 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOff ( const Coord &  ,
const ValueType  
)
inline

Definition at line 550 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOff ( Index  ,
const ValueType  
)
inline

Definition at line 551 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename AccessorT >
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOffAndCache ( const Coord &  ,
const ValueType ,
AccessorT &   
)
inline

Definition at line 589 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOn ( const Coord &  xyz)
inline

Definition at line 553 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOn ( Index  offset)
inline

Definition at line 554 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOn ( const Coord &  ,
const ValueType  
)
inline

Definition at line 556 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOn ( Index  ,
const ValueType  
)
inline

Definition at line 557 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOnly ( const Coord &  ,
const ValueType  
)
inline

Definition at line 544 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOnly ( Index  ,
const ValueType  
)
inline

Definition at line 545 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename AccessorT >
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValueOnlyAndCache ( const Coord &  ,
const ValueType ,
AccessorT &   
)
inline

Definition at line 581 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValuesOff ( )
inline

Definition at line 562 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::setValuesOn ( )
inline

Definition at line 561 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::signedFloodFill ( const ValueType )
inline

Definition at line 600 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::signedFloodFill ( const ValueType ,
const ValueType  
)
inline

Definition at line 601 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
PointDataLeafNode* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::touchLeaf ( const Coord &  )
inline

Return a pointer to this node.

Definition at line 470 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename AccessorT >
PointDataLeafNode* openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::touchLeafAndCache ( const Coord &  ,
AccessorT &   
)
inline

Return a pointer to this node.

Definition at line 472 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::updateValueMask ( )
inline

Activate voxels with non-zero points, deactivate voxels with zero points.

Definition at line 1117 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::validateOffsets ( ) const
inline

Throws an error if the voxel values on this leaf are not monotonically increasing or within the bounds of the attribute arrays.

Definition at line 910 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::writeBuffers ( std::ostream &  os,
bool  toHalf = false 
) const
inline

Definition at line 1353 of file PointDataGrid.h.

template<typename T , Index Log2Dim>
void openvdb::OPENVDB_VERSION_NAME::points::PointDataLeafNode< T, Log2Dim >::writeTopology ( std::ostream &  os,
bool  toHalf = false 
) const
inline

Definition at line 1151 of file PointDataGrid.h.

Friends And Related Function Documentation

template<typename T, Index Log2Dim>
friend class ::TestPointDataLeaf
friend

Definition at line 605 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
template<typename , Index >
friend class PointDataLeafNode
friend

Definition at line 626 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
friend class tree::IteratorBase< MaskDenseIterator, PointDataLeafNode >
friend

Definition at line 630 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
friend class tree::IteratorBase< MaskOffIterator, PointDataLeafNode >
friend

Definition at line 629 of file PointDataGrid.h.

template<typename T, Index Log2Dim>
friend class tree::IteratorBase< MaskOnIterator, PointDataLeafNode >
friend

Definition at line 628 of file PointDataGrid.h.


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