Loading...
Searching...
No Matches
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 <openvdb/tree/ValueAccessor.h>`

Inheritance diagram for ValueAccessorLeafBuffer< TreeTypeT, IntegerSequence, Enable >:

## 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::v11_0::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]].

## Member Function Documentation

## buffer() [1/2]

template<typename TreeTypeT , typename IntegerSequence , typename Enable = void>

const TreeTypeT::ValueType * buffer | ( |  | ) |

inline

## buffer() [2/2]

template<typename TreeTypeT , typename IntegerSequence , typename Enable = void>

const TreeTypeT::ValueType * buffer | ( |  | ) | const

inline

## setBuffer()

template<typename TreeTypeT , typename IntegerSequence , typename Enable = void>

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

inline

## Member Data Documentation

## BypassLeafAPI

template<typename TreeTypeT , typename IntegerSequence , typename Enable = void>
template<typename NodeT >

constexpr bool BypassLeafAPI

staticconstexpr

Initial value:
=
std::is_same<NodeT, typename TreeTypeT::LeafNodeType>::value