OpenVDB 12.1.0

Loading...
Searching...
No Matches
NodeList< NodeT > Class Template Reference

This class caches tree nodes of a specific type in a linear array. More...

`#include <openvdb/tree/NodeManager.h>`

## Classes
class | NodeRange

## Public Member Functions
| NodeList ()=default
NodeT & | operator() (size_t n) const
NodeT *& | operator[] (size_t n)
Index64 | nodeCount () const
void | clear ()
template<typename RootT>
bool | initRootChildren (RootT &root)
template<typename ParentsT, typename NodeFilterT>
bool | initNodeChildren (ParentsT &parents, const NodeFilterT &nodeFilter=NodeFilterT(), bool serial=false)
NodeRange | nodeRange (size_t grainsize=1) const
| Return a TBB-compatible NodeRange.
template<typename NodeOp>
void | foreach (const NodeOp &op, bool threaded=true, size_t grainSize=1)
template<typename NodeOp>
void | reduce (NodeOp &op, bool threaded=true, size_t grainSize=1)
template<typename NodeOp>
void | foreachWithIndex (const NodeOp &op, bool threaded=true, size_t grainSize=1)
template<typename NodeOp>
void | reduceWithIndex (NodeOp &op, bool threaded=true, size_t grainSize=1)

## Protected Attributes
size_t | mNodeCount = 0
std::unique_ptr< NodeT *[]> | mNodePtrs
NodeT ** | mNodes = nullptr

## Detailed Description

template<typename NodeT>
class openvdb::v12_1::tree::NodeList< NodeT >

This class caches tree nodes of a specific type in a linear array.

Note
  It is for internal use and should rarely be used directly.

## Constructor & Destructor Documentation

## ◆ NodeList()

template<typename NodeT>

NodeList | ( |  | ) |
| default

## Member Function Documentation

## ◆ clear()

template<typename NodeT>

void clear | ( |  | ) |
| inline

## ◆ foreach()

template<typename NodeT>
template<typename NodeOp>

void foreach | ( | const NodeOp & | op,
|  | bool | threaded = true,
|  | size_t | grainSize = 1 )
| inline

## ◆ foreachWithIndex()

template<typename NodeT>
template<typename NodeOp>

void foreachWithIndex | ( | const NodeOp & | op,
|  | bool | threaded = true,
|  | size_t | grainSize = 1 )
| inline

## ◆ initNodeChildren()

template<typename NodeT>
template<typename ParentsT, typename NodeFilterT>

bool initNodeChildren | ( | ParentsT & | parents,
|  | const NodeFilterT & | nodeFilter = NodeFilterT(),
|  | bool | serial = false )
| inline

## ◆ initRootChildren()

template<typename NodeT>
template<typename RootT>

bool initRootChildren | ( | RootT & | root | ) |
| inline

## ◆ nodeCount()

template<typename NodeT>

Index64 nodeCount | ( |  | ) | const
| inline

## ◆ nodeRange()

template<typename NodeT>

NodeRange nodeRange | ( | size_t | grainsize = 1 | ) | const
| inline

Return a TBB-compatible NodeRange.

## ◆ operator()()

template<typename NodeT>

NodeT & operator() | ( | size_t | n | ) | const
| inline

## ◆ operator[]()

template<typename NodeT>

NodeT *& operator[] | ( | size_t | n | ) |
| inline

## ◆ reduce()

template<typename NodeT>
template<typename NodeOp>

void reduce | ( | NodeOp & | op,
|  | bool | threaded = true,
|  | size_t | grainSize = 1 )
| inline

## ◆ reduceWithIndex()

template<typename NodeT>
template<typename NodeOp>

void reduceWithIndex | ( | NodeOp & | op,
|  | bool | threaded = true,
|  | size_t | grainSize = 1 )
| inline

## Member Data Documentation

## ◆ mNodeCount

template<typename NodeT>

size_t mNodeCount = 0
| protected

## ◆ mNodePtrs

template<typename NodeT>

std::unique_ptr<NodeT*[]> mNodePtrs
| protected

## ◆ mNodes

template<typename NodeT>

NodeT** mNodes = nullptr
| protected