OpenVDB: ReadAccessor< BuildT, 0, 1, 2 > Class Template Reference

OpenVDB 12.1.1

Loading...
Searching...
No Matches
ReadAccessor< BuildT, 0, 1, 2 > Class Template Reference

Node caching at all (three) tree levels. More...

`#include <nanovdb/NanoVDB.h>`

Inheritance diagram for ReadAccessor< BuildT, 0, 1, 2 >:

## Public Types
using | BuildType = BuildT
using | ValueType = ValueT
using | CoordType = CoordT

## Public Member Functions
__hostdev__ | ReadAccessor (const RootT &root)
| Constructor from a root node.
__hostdev__ | ReadAccessor (const GridT &grid)
| Constructor from a grid.
__hostdev__ | ReadAccessor (const TreeT &tree)
| Constructor from a tree.
__hostdev__ const RootT & | root () const
| ReadAccessor (const ReadAccessor &)=default
| Defaults constructors.
| ~ReadAccessor ()=default
ReadAccessor & | operator= (const ReadAccessor &)=default
template<typename NodeT>
__hostdev__ const NodeT * | getNode () const
| Return a const point to the cached node of the specified type.
template<int LEVEL>
__hostdev__ const NodeTrait< TreeT, LEVEL >::type * | getNode () const
__hostdev__ void | clear ()
| Reset this access to its initial state, i.e. with an empty cache.
template<typename NodeT>
__hostdev__ bool | isCached (const CoordType &ijk) const
__hostdev__ ValueType | getValue (const CoordType &ijk) const
__hostdev__ ValueType | getValue (int i, int j, int k) const
__hostdev__ ValueType | operator() (const CoordType &ijk) const
__hostdev__ ValueType | operator() (int i, int j, int k) const
__hostdev__ auto | getNodeInfo (const CoordType &ijk) const
__hostdev__ bool | isActive (const CoordType &ijk) const
__hostdev__ bool | probeValue (const CoordType &ijk, ValueType &v) const
__hostdev__ const LeafT * | probeLeaf (const CoordType &ijk) const
template<typename OpT, typename... ArgsT>
__hostdev__ OpT::Type | get (const CoordType &ijk, ArgsT &&... args) const
template<typename OpT, typename... ArgsT>
__hostdev__ void | set (const CoordType &ijk, ArgsT &&... args) const
template<typename RayT>
__hostdev__ uint32_t | getDim (const CoordType &ijk, const RayT &ray) const

## Static Public Attributes
static const int | CacheLevels = 3

## Friends
template<typename>
class | RootNode
| Allow nodes to insert themselves into the cache.
template<typename, uint32_t>
class | InternalNode
template<typename, typename, template< uint32_t > class, uint32_t>
class | LeafNode

## Detailed Description

template<typename BuildT>
class nanovdb::ReadAccessor< BuildT, 0, 1, 2 >

Node caching at all (three) tree levels.

## Member Typedef Documentation

## ◆ BuildType

template<typename BuildT>

using BuildType = BuildT

## ◆ CoordType

template<typename BuildT>

using CoordType = CoordT

## ◆ ValueType

template<typename BuildT>

using ValueType = ValueT

## Constructor & Destructor Documentation

## ◆ ReadAccessor() [1/4]

template<typename BuildT>

__hostdev__ ReadAccessor | ( | const RootT & | root | ) |
| inline

Constructor from a root node.

## ◆ ReadAccessor() [2/4]

template<typename BuildT>

__hostdev__ ReadAccessor | ( | const GridT & | grid | ) |
| inline

Constructor from a grid.

## ◆ ReadAccessor() [3/4]

template<typename BuildT>

__hostdev__ ReadAccessor | ( | const TreeT & | tree | ) |
| inline

Constructor from a tree.

## ◆ ReadAccessor() [4/4]

template<typename BuildT>

ReadAccessor | ( | const ReadAccessor< BuildT, 0, 1, 2 > & |  | ) |
| default

Defaults constructors.

## ◆ ~ReadAccessor()

template<typename BuildT>

~ReadAccessor | ( |  | ) |
| default

## Member Function Documentation

## ◆ clear()

template<typename BuildT>

__hostdev__ void clear | ( |  | ) |
| inline

Reset this access to its initial state, i.e. with an empty cache.

## ◆ get()

template<typename BuildT>
template<typename OpT, typename... ArgsT>

__hostdev__ OpT::Type get | ( | const CoordType & | ijk,
|  | ArgsT &&... | args ) const
| inline

## ◆ getDim()

template<typename BuildT>
template<typename RayT>

__hostdev__ uint32_t getDim | ( | const CoordType & | ijk,
|  | const RayT & | ray ) const
| inline

## ◆ getNode() [1/2]

template<typename BuildT>
template<int LEVEL>

__hostdev__ const NodeTrait< TreeT, LEVEL >::type * getNode | ( |  | ) | const
| inline

## ◆ getNode() [2/2]

template<typename BuildT>
template<typename NodeT>

__hostdev__ const NodeT * getNode | ( |  | ) | const
| inline

Return a const point to the cached node of the specified type.

Warning
  The return value could be NULL.

## ◆ getNodeInfo()

template<typename BuildT>

__hostdev__ auto getNodeInfo | ( | const CoordType & | ijk | ) | const
| inline

## ◆ getValue() [1/2]

template<typename BuildT>

__hostdev__ ValueType getValue | ( | const CoordType & | ijk | ) | const
| inline

## ◆ getValue() [2/2]

template<typename BuildT>

__hostdev__ ValueType getValue | ( | int | i,
|  | int | j,
|  | int | k ) const
| inline

## ◆ isActive()

template<typename BuildT>

__hostdev__ bool isActive | ( | const CoordType & | ijk | ) | const
| inline

## ◆ isCached()

template<typename BuildT>
template<typename NodeT>

__hostdev__ bool isCached | ( | const CoordType & | ijk | ) | const
| inline

## ◆ operator()() [1/2]

template<typename BuildT>

__hostdev__ ValueType operator() | ( | const CoordType & | ijk | ) | const
| inline

## ◆ operator()() [2/2]

template<typename BuildT>

__hostdev__ ValueType operator() | ( | int | i,
|  | int | j,
|  | int | k ) const
| inline

## ◆ operator=()

template<typename BuildT>

ReadAccessor & operator= | ( | const ReadAccessor< BuildT, 0, 1, 2 > & |  | ) |
| default

## ◆ probeLeaf()

template<typename BuildT>

__hostdev__ const LeafT * probeLeaf | ( | const CoordType & | ijk | ) | const
| inline

## ◆ probeValue()

template<typename BuildT>

__hostdev__ bool probeValue | ( | const CoordType & | ijk,
|  | ValueType & | v ) const
| inline

## ◆ root()

template<typename BuildT>

__hostdev__ const RootT & root | ( |  | ) | const
| inline

## ◆ set()

template<typename BuildT>
template<typename OpT, typename... ArgsT>

__hostdev__ void set | ( | const CoordType & | ijk,
|  | ArgsT &&... | args ) const
| inline

## Friends And Related Symbol Documentation

## ◆ InternalNode

template<typename BuildT>
template<typename, uint32_t>

friend class InternalNode
| friend

## ◆ LeafNode

template<typename BuildT>
template<typename, typename, template< uint32_t > class, uint32_t>

friend class LeafNode
| friend

## ◆ RootNode

template<typename BuildT>
template<typename>

friend class RootNode
| friend

Allow nodes to insert themselves into the cache.

## Member Data Documentation

## ◆ CacheLevels

template<typename BuildT>

const int CacheLevels = 3
| static