OpenVDB: ChannelAccessor< ChannelT > Class Template Reference

OpenVDB 10.0.1

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | List of all members
ChannelAccessor< ChannelT > Class Template Reference

Class to access values in channels at a specific voxel location. More...

`#include <nanovdb/NanoVDB.h>`

Inheritance diagram for ChannelAccessor< ChannelT >:

## Public Types
using | ValueType = ChannelT
using | TreeType = IndexTree
using | AccessorType = ChannelAccessor< ChannelT >
using | CoordType = CoordT
using | NodeInfo = typename ReadAccessor< ValueT, -1, -1, -1 >::NodeInfo

## Public Member Functions
| ChannelAccessor (const IndexGrid &grid, uint32_t channelID=0u)
| Ctor from an IndexGrid and an integer ID of an internal channel that is assumed to exist as blind data in the IndexGrid.
| ChannelAccessor (const IndexGrid &grid, ChannelT *channelPtr)
| Ctor from an IndexGrid and an external channel.
const IndexGrid & | grid () const
| Return a const reference to the IndexGrid.
const IndexTree & | tree () const
| Return a const reference to the tree of the IndexGrid.
const Vec3R & | voxelSize () const
| Return a vector of the axial voxel sizes.
const uint64_t & | valueCount () const
| Return total number of values indexed by the IndexGrid.
void | setChannel (ChannelT *channelPtr)
| Change to an external channel.
void | setChannel (uint32_t channelID)
| Change to an internal channel, assuming it exists as as blind data in the IndexGrid.
uint64_t | getIndex (const Coord &ijk) const
| Return the linear offset into a channel that maps to the specified coordinate.
uint64_t | idx (int i, int j, int k) const
ChannelT & | getValue (const Coord &ijk) const
| Return the value from a cached channel that maps to the specified coordinate.
ChannelT & | operator() (const Coord &ijk) const
ChannelT & | operator() (int i, int j, int k) const
bool | probeValue (const CoordType &ijk, typename remove_const< ChannelT >::type &v) const
| return the state and updates the value of the specified voxel
template<typename T >
T & | getValue (const Coord &ijk, T *channelPtr) const
| Return the value from a specified channel that maps to the specified coordinate.
const RootT & | root () const
template<typename NodeT >
const NodeT * | getNode () const
| Return a const point to the cached node of the specified type.
template<int LEVEL>
const NodeTrait< TreeT, LEVEL >::type * | getNode () const
void | clear ()
| Reset this access to its initial state, i.e. with an empty cache.
template<typename NodeT >
bool | isCached (const CoordType &ijk) const
ValueType | getValue (const CoordType &ijk) const
ValueType | operator() (const CoordType &ijk) const
NodeInfo | getNodeInfo (const CoordType &ijk) const
bool | isActive (const CoordType &ijk) const
bool | probeValue (const CoordType &ijk, ValueType &v) const
const LeafT * | probeLeaf (const CoordType &ijk) const
template<typename RayT >
uint32_t | getDim (const CoordType &ijk, const RayT &ray) const

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

## Detailed Description

template<typename ChannelT>
class nanovdb::ChannelAccessor< ChannelT >

Class to access values in channels at a specific voxel location.

Note
  The ChannelT template parameter can be either const and non-const.

## Member Typedef Documentation

## ◆ AccessorType

template<typename ChannelT >

using AccessorType = ChannelAccessor<ChannelT>

## ◆ CoordType

template<typename BuildT >

using CoordType = CoordT
| inherited

## ◆ NodeInfo

template<typename BuildT >

using NodeInfo = typename ReadAccessor<ValueT, -1, -1, -1>::NodeInfo
| inherited

## ◆ TreeType

template<typename ChannelT >

using TreeType = IndexTree

## ◆ ValueType

template<typename ChannelT >

using ValueType = ChannelT

## Constructor & Destructor Documentation

## ◆ ChannelAccessor() [1/2]

template<typename ChannelT >

ChannelAccessor | ( | const IndexGrid & | grid,
|  | uint32_t | channelID = `0u`
| ) |  |
| inline

Ctor from an IndexGrid and an integer ID of an internal channel that is assumed to exist as blind data in the IndexGrid.

## ◆ ChannelAccessor() [2/2]

template<typename ChannelT >

ChannelAccessor | ( | const IndexGrid & | grid,
|  | ChannelT * | channelPtr
| ) |  |
| inline

Ctor from an IndexGrid and an external channel.

## Member Function Documentation

## ◆ clear()

template<typename BuildT >

void clear | ( |  | ) |
| inlineinherited

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

## ◆ getDim()

template<typename BuildT >
template<typename RayT >

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

## ◆ getIndex()

template<typename ChannelT >

uint64_t getIndex | ( | const Coord & | ijk | ) | const
| inline

Return the linear offset into a channel that maps to the specified coordinate.

## ◆ getNode() [1/2]

template<typename BuildT >
template<typename NodeT >

const NodeT * getNode | ( |  | ) | const
| inlineinherited

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

Warning
  The return value could be NULL.

## ◆ getNode() [2/2]

template<typename BuildT >
template<int LEVEL>

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

## ◆ getNodeInfo()

template<typename BuildT >

NodeInfo getNodeInfo | ( | const CoordType & | ijk | ) | const
| inlineinherited

## ◆ getValue() [1/3]

template<typename ChannelT >

ChannelT & getValue | ( | const Coord & | ijk | ) | const
| inline

Return the value from a cached channel that maps to the specified coordinate.

## ◆ getValue() [2/3]

template<typename ChannelT >
template<typename T >

T & getValue | ( | const Coord & | ijk,
|  | T * | channelPtr
| ) |  | const
| inline

Return the value from a specified channel that maps to the specified coordinate.

Note
  The template parameter can be either const or non-const

## ◆ getValue() [3/3]

template<typename BuildT >

ValueType getValue | ( | const CoordType & | ijk | ) | const
| inlineinherited

## ◆ grid()

template<typename ChannelT >

const IndexGrid & grid | ( |  | ) | const
| inline

Return a const reference to the IndexGrid.

## ◆ idx()

template<typename ChannelT >

uint64_t idx | ( | int | i,
|  | int | j,
|  | int | k
| ) |  | const
| inline

## ◆ isActive()

template<typename BuildT >

bool isActive | ( | const CoordType & | ijk | ) | const
| inlineinherited

## ◆ isCached()

template<typename BuildT >
template<typename NodeT >

bool isCached | ( | const CoordType & | ijk | ) | const
| inlineinherited

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

template<typename ChannelT >

ChannelT & operator() | ( | const Coord & | ijk | ) | const
| inline

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

template<typename BuildT >

ValueType operator() | ( | const CoordType & | ijk | ) | const
| inlineinherited

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

template<typename ChannelT >

ChannelT & operator() | ( | int | i,
|  | int | j,
|  | int | k
| ) |  | const
| inline

## ◆ probeLeaf()

template<typename BuildT >

const LeafT * probeLeaf | ( | const CoordType & | ijk | ) | const
| inlineinherited

## ◆ probeValue() [1/2]

template<typename ChannelT >

bool probeValue | ( | const CoordType & | ijk,
|  | typename remove_const< ChannelT >::type & | v
| ) |  | const
| inline

return the state and updates the value of the specified voxel

## ◆ probeValue() [2/2]

template<typename BuildT >

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

## ◆ root()

template<typename BuildT >

const RootT & root | ( |  | ) | const
| inlineinherited

## ◆ setChannel() [1/2]

template<typename ChannelT >

void setChannel | ( | ChannelT * | channelPtr | ) |
| inline

Change to an external channel.

## ◆ setChannel() [2/2]

template<typename ChannelT >

void setChannel | ( | uint32_t | channelID | ) |
| inline

Change to an internal channel, assuming it exists as as blind data in the IndexGrid.

## ◆ tree()

template<typename ChannelT >

const IndexTree & tree | ( |  | ) | const
| inline

Return a const reference to the tree of the IndexGrid.

## ◆ valueCount()

template<typename ChannelT >

const uint64_t & valueCount | ( |  | ) | const
| inline

Return total number of values indexed by the IndexGrid.

## ◆ voxelSize()

template<typename ChannelT >

const Vec3R & voxelSize | ( |  | ) | const
| inline

Return a vector of the axial voxel sizes.

## Member Data Documentation

## ◆ CacheLevels

template<typename BuildT >

const int CacheLevels = 3
| staticinherited