HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb::OPENVDB_VERSION_NAME::tree::ValueAccessorLeafBuffer< TreeTypeT, IntegerSequence, Enable > Struct Template Reference

A small class that contains a cached pointer to a LeafNode data buffer which is derived from by the internal Value Accessor Implementation. This allows for the empty base class optimization to be performed in the case where a LeafNode does not store a contiguous index-able buffer. From C++20 we can instead switch to [[no_unique_address]]. More...

#include <ValueAccessor.h>

Public Member Functions

const TreeTypeT::ValueType * buffer ()
 
const TreeTypeT::ValueType * buffer () const
 
void setBuffer (const typename TreeTypeT::ValueType *b) const
 

Static Public Attributes

template<typename NodeT >
static constexpr bool BypassLeafAPI
 

Detailed Description

template<typename TreeTypeT, typename IntegerSequence, typename Enable = void>
struct openvdb::OPENVDB_VERSION_NAME::tree::ValueAccessorLeafBuffer< TreeTypeT, IntegerSequence, Enable >

A small class that contains a cached pointer to a LeafNode data buffer which is derived from by the internal Value Accessor Implementation. This allows for the empty base class optimization to be performed in the case where a LeafNode does not store a contiguous index-able buffer. From C++20 we can instead switch to [[no_unique_address]].

Definition at line 332 of file ValueAccessor.h.

Member Function Documentation

template<typename TreeTypeT, typename IntegerSequence, typename Enable = void>
const TreeTypeT::ValueType* openvdb::OPENVDB_VERSION_NAME::tree::ValueAccessorLeafBuffer< TreeTypeT, IntegerSequence, Enable >::buffer ( )
inline

Definition at line 337 of file ValueAccessor.h.

template<typename TreeTypeT, typename IntegerSequence, typename Enable = void>
const TreeTypeT::ValueType* openvdb::OPENVDB_VERSION_NAME::tree::ValueAccessorLeafBuffer< TreeTypeT, IntegerSequence, Enable >::buffer ( ) const
inline

Definition at line 338 of file ValueAccessor.h.

template<typename TreeTypeT, typename IntegerSequence, typename Enable = void>
void openvdb::OPENVDB_VERSION_NAME::tree::ValueAccessorLeafBuffer< TreeTypeT, IntegerSequence, Enable >::setBuffer ( const typename TreeTypeT::ValueType *  b) const
inline

Definition at line 339 of file ValueAccessor.h.

Member Data Documentation

template<typename TreeTypeT, typename IntegerSequence, typename Enable = void>
template<typename NodeT >
constexpr bool openvdb::OPENVDB_VERSION_NAME::tree::ValueAccessorLeafBuffer< TreeTypeT, IntegerSequence, Enable >::BypassLeafAPI
static

The documentation for this struct was generated from the following file: