OpenVDB 12.0.0
 
Loading...
Searching...
No Matches
PointAccessor< AttT, Point > Class Template Reference

#include <nanovdb/NanoVDB.h>

Inheritance diagram for PointAccessor< AttT, Point >:

Public Types

using BuildType
 
using ValueType
 
using CoordType
 

Public Member Functions

 PointAccessor (const NanoGrid< Point > &grid)
 
__hostdev__ operator bool () const
 return true if this access was initialized correctly
 
__hostdev__ const NanoGrid< Point > & grid () const
 
__hostdev__ uint64_t gridPoints (const AttT *&begin, const AttT *&end) const
 Return the total number of point in the grid and set the iterators to the complete range of points.
 
__hostdev__ uint64_t leafPoints (const Coord &ijk, const AttT *&begin, const AttT *&end) const
 Return the number of points in the leaf node containing the coordinate ijk. If this return value is larger than zero then the iterators begin and end will point to all the attributes contained within that leaf node.
 
__hostdev__ uint64_t voxelPoints (const Coord &ijk, const AttT *&begin, const AttT *&end) const
 get iterators over attributes to points at a specific voxel location
 
 PointAccessor (const NanoGrid< Point > &grid)
 
__hostdev__ operator bool () const
 return true if this access was initialized correctly
 
__hostdev__ const NanoGrid< Point > & grid () const
 
__hostdev__ uint64_t gridPoints (const AttT *&begin, const AttT *&end) const
 Return the total number of point in the grid and set the iterators to the complete range of points.
 
__hostdev__ uint64_t leafPoints (const Coord &ijk, const AttT *&begin, const AttT *&end) const
 Return the number of points in the leaf node containing the coordinate ijk. If this return value is larger than zero then the iterators begin and end will point to all the attributes contained within that leaf node.
 
__hostdev__ uint64_t voxelPoints (const Coord &ijk, const AttT *&begin, const AttT *&end) const
 get iterators over attributes to points at a specific voxel location
 
__hostdev__ const RootTroot () const
 
__hostdev__ const NodeT * getNode () const
 Return a const point to the cached node of the specified type.
 
__hostdev__ const NodeTrait< TreeT, LEVEL >::type * getNode () const
 
__hostdev__ void clear ()
 Reset this access to its initial state, i.e. with an empty cache.
 
__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 LeafTprobeLeaf (const CoordType &ijk) const
 
__hostdev__ auto get (const CoordType &ijk, ArgsT &&... args) const
 
__hostdev__ auto set (const CoordType &ijk, ArgsT &&... args) const
 
__hostdev__ uint32_t getDim (const CoordType &ijk, const RayT &ray) const
 

Static Public Attributes

static const int CacheLevels
 

Member Typedef Documentation

◆ BuildType

using BuildType

◆ CoordType

using CoordType

◆ ValueType

using ValueType

Constructor & Destructor Documentation

◆ PointAccessor() [1/2]

template<typename AttT>
PointAccessor ( const NanoGrid< Point > & grid)
inline

◆ PointAccessor() [2/2]

PointAccessor ( const NanoGrid< Point > & grid)
inline

Member Function Documentation

◆ clear()

__hostdev__ void clear ( )
inline

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

◆ get()

__hostdev__ auto get ( const CoordType & ijk,
ArgsT &&... args ) const
inline

◆ getDim()

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

◆ getNode() [1/2]

__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.

◆ getNode() [2/2]

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

◆ getNodeInfo()

__hostdev__ auto getNodeInfo ( const CoordType & ijk) const
inline

◆ getValue() [1/2]

__hostdev__ ValueType getValue ( const CoordType & ijk) const
inline

◆ getValue() [2/2]

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

◆ grid() [1/2]

__hostdev__ const NanoGrid< Point > & grid ( ) const
inline

◆ grid() [2/2]

template<typename AttT>
__hostdev__ const NanoGrid< Point > & grid ( ) const
inline

◆ gridPoints() [1/2]

__hostdev__ uint64_t gridPoints ( const AttT *& begin,
const AttT *& end ) const
inline

Return the total number of point in the grid and set the iterators to the complete range of points.

◆ gridPoints() [2/2]

template<typename AttT>
__hostdev__ uint64_t gridPoints ( const AttT *& begin,
const AttT *& end ) const
inline

Return the total number of point in the grid and set the iterators to the complete range of points.

◆ isActive()

__hostdev__ bool isActive ( const CoordType & ijk) const
inline

◆ isCached()

__hostdev__ bool isCached ( const CoordType & ijk) const
inline

◆ leafPoints() [1/2]

__hostdev__ uint64_t leafPoints ( const Coord & ijk,
const AttT *& begin,
const AttT *& end ) const
inline

Return the number of points in the leaf node containing the coordinate ijk. If this return value is larger than zero then the iterators begin and end will point to all the attributes contained within that leaf node.

◆ leafPoints() [2/2]

template<typename AttT>
__hostdev__ uint64_t leafPoints ( const Coord & ijk,
const AttT *& begin,
const AttT *& end ) const
inline

Return the number of points in the leaf node containing the coordinate ijk. If this return value is larger than zero then the iterators begin and end will point to all the attributes contained within that leaf node.

◆ operator bool() [1/2]

__hostdev__ operator bool ( ) const
inline

return true if this access was initialized correctly

◆ operator bool() [2/2]

template<typename AttT>
__hostdev__ operator bool ( ) const
inline

return true if this access was initialized correctly

◆ operator()() [1/2]

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

◆ operator()() [2/2]

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

◆ probeLeaf()

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

◆ probeValue()

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

◆ root()

__hostdev__ const RootT & root ( ) const
inline

◆ set()

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

◆ voxelPoints() [1/2]

__hostdev__ uint64_t voxelPoints ( const Coord & ijk,
const AttT *& begin,
const AttT *& end ) const
inline

get iterators over attributes to points at a specific voxel location

◆ voxelPoints() [2/2]

template<typename AttT>
__hostdev__ uint64_t voxelPoints ( const Coord & ijk,
const AttT *& begin,
const AttT *& end ) const
inline

get iterators over attributes to points at a specific voxel location

Member Data Documentation

◆ CacheLevels

const int CacheLevels
static