OpenVDB 11.0.0

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Attributes | List of all members
NodeManagerLink< NodeT, LEVEL > Class Template Reference

This class is a link in a chain that each caches tree nodes of a specific type in a linear array. More...

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

## Public Types
using | NonConstChildNodeType = typename NodeT::ChildNodeType
using | ChildNodeType = typename CopyConstness<NodeT, NonConstChildNodeType>::Type

## Public Member Functions
| NodeManagerLink ()=default
void | clear ()
template<typename RootT >
void | initRootChildren (RootT &root, bool serial=false)
template<typename ParentsT >
void | initNodeChildren (ParentsT &parents, bool serial=false)
Index64 | nodeCount () const
Index64 | nodeCount (Index i) const
template<typename NodeOp >
void | foreachBottomUp (const NodeOp &op, bool threaded, size_t grainSize)
template<typename NodeOp >
void | foreachTopDown (const NodeOp &op, bool threaded, size_t grainSize)
template<typename NodeOp >
void | reduceBottomUp (NodeOp &op, bool threaded, size_t grainSize)
template<typename NodeOp >
void | reduceTopDown (NodeOp &op, bool threaded, size_t grainSize)

## Protected Attributes
NodeList< NodeT > | mList
NodeManagerLink< ChildNodeType, LEVEL-1 > | mNext

## Detailed Description

template<typename NodeT, Index LEVEL>
class openvdb::v11_0::tree::NodeManagerLink< NodeT, LEVEL >

This class is a link in a chain that each caches tree nodes of a specific type in a linear array.

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

## Member Typedef Documentation

## ◆ ChildNodeType

template<typename NodeT , Index LEVEL>

using ChildNodeType = typename CopyConstness<NodeT, NonConstChildNodeType>::Type

## ◆ NonConstChildNodeType

template<typename NodeT , Index LEVEL>

using NonConstChildNodeType = typename NodeT::ChildNodeType

## Constructor & Destructor Documentation

## ◆ NodeManagerLink()

template<typename NodeT , Index LEVEL>

NodeManagerLink | ( |  | ) |
| default

## Member Function Documentation

## ◆ clear()

template<typename NodeT , Index LEVEL>

void clear | ( |  | ) |
| inline

## ◆ foreachBottomUp()

template<typename NodeT , Index LEVEL>
template<typename NodeOp >

void foreachBottomUp | ( | const NodeOp & | op,
|  | bool | threaded,
|  | size_t | grainSize )
| inline

## ◆ foreachTopDown()

template<typename NodeT , Index LEVEL>
template<typename NodeOp >

void foreachTopDown | ( | const NodeOp & | op,
|  | bool | threaded,
|  | size_t | grainSize )
| inline

## ◆ initNodeChildren()

template<typename NodeT , Index LEVEL>
template<typename ParentsT >

void initNodeChildren | ( | ParentsT & | parents,
|  | bool | serial = false )
| inline

## ◆ initRootChildren()

template<typename NodeT , Index LEVEL>
template<typename RootT >

void initRootChildren | ( | RootT & | root,
|  | bool | serial = false )
| inline

## ◆ nodeCount() [1/2]

template<typename NodeT , Index LEVEL>

Index64 nodeCount | ( |  | ) | const
| inline

## ◆ nodeCount() [2/2]

template<typename NodeT , Index LEVEL>

Index64 nodeCount | ( | Index | i | ) | const
| inline

## ◆ reduceBottomUp()

template<typename NodeT , Index LEVEL>
template<typename NodeOp >

void reduceBottomUp | ( | NodeOp & | op,
|  | bool | threaded,
|  | size_t | grainSize )
| inline

## ◆ reduceTopDown()

template<typename NodeT , Index LEVEL>
template<typename NodeOp >

void reduceTopDown | ( | NodeOp & | op,
|  | bool | threaded,
|  | size_t | grainSize )
| inline

## Member Data Documentation

## ◆ mList

template<typename NodeT , Index LEVEL>

NodeList<NodeT> mList
| protected

## ◆ mNext

template<typename NodeT , Index LEVEL>

NodeManagerLink<ChildNodeType, LEVEL-1> mNext
| protected