OpenVDB 13.0.0

Loading...
Searching...
No Matches
SparseMaskedExtractor< DenseType, MaskTreeType > Class Template Reference

Functor-based class used to extract data from a dense grid, at the index-space intersection with a supplied mask in the form of a sparse tree. The `extractSparseTreeWithMask` function wraps this class. More...

`#include <openvdb/tools/DenseSparseTools.h>`

## Public Types
using | _ResultTreeType = typename DSConverter<DenseType, MaskTreeType>::Type
using | ResultTreeType = _ResultTreeType
using | ResultLeafNodeType = typename ResultTreeType::LeafNodeType
using | ResultValueType = typename ResultTreeType::ValueType
using | DenseValueType = ResultValueType
using | MaskTree = typename ResultTreeType::template ValueConverter<ValueMask>::Type
using | MaskLeafCIter = typename MaskTree::LeafCIter
using | MaskLeafVec = std::vector<const typename MaskTree::LeafNodeType*>

## Public Member Functions
| SparseMaskedExtractor (const DenseType &dense, const ResultValueType &background, const MaskLeafVec &leafVec)
| SparseMaskedExtractor (const SparseMaskedExtractor &other, tbb::split)
ResultTreeType::Ptr | extract (bool threaded=true)
void | operator() (const tbb::blocked_range< size_t > &range)
void | join (SparseMaskedExtractor &rhs)

## Detailed Description

template<typename DenseType, typename MaskTreeType>
class openvdb::v13_0::tools::SparseMaskedExtractor< DenseType, MaskTreeType >

Functor-based class used to extract data from a dense grid, at the index-space intersection with a supplied mask in the form of a sparse tree. The `extractSparseTreeWithMask` function wraps this class.

## Member Typedef Documentation

## ◆ _ResultTreeType

template<typename DenseType, typename MaskTreeType>

using _ResultTreeType = typename DSConverter<DenseType, MaskTreeType>::Type

## ◆ DenseValueType

template<typename DenseType, typename MaskTreeType>

using DenseValueType = ResultValueType

## ◆ MaskLeafCIter

template<typename DenseType, typename MaskTreeType>

using MaskLeafCIter = typename MaskTree::LeafCIter

## ◆ MaskLeafVec

template<typename DenseType, typename MaskTreeType>

using MaskLeafVec = std::vector<const typename MaskTree::LeafNodeType*>

## ◆ MaskTree

template<typename DenseType, typename MaskTreeType>

using MaskTree = typename ResultTreeType::template ValueConverter<ValueMask>::Type

## ◆ ResultLeafNodeType

template<typename DenseType, typename MaskTreeType>

using ResultLeafNodeType = typename ResultTreeType::LeafNodeType

## ◆ ResultTreeType

template<typename DenseType, typename MaskTreeType>

using ResultTreeType = _ResultTreeType

## ◆ ResultValueType

template<typename DenseType, typename MaskTreeType>

using ResultValueType = typename ResultTreeType::ValueType

## Constructor & Destructor Documentation

## ◆ SparseMaskedExtractor() [1/2]

template<typename DenseType, typename MaskTreeType>

SparseMaskedExtractor | ( | const DenseType & | dense,
|  | const ResultValueType & | background,
|  | const MaskLeafVec & | leafVec )
| inline

## ◆ SparseMaskedExtractor() [2/2]

template<typename DenseType, typename MaskTreeType>

SparseMaskedExtractor | ( | const SparseMaskedExtractor< DenseType, MaskTreeType > & | other,
|  | tbb::split | )
| inline

## Member Function Documentation

## ◆ extract()

template<typename DenseType, typename MaskTreeType>

ResultTreeType::Ptr extract | ( | bool | threaded = true | ) |
| inline

## ◆ join()

template<typename DenseType, typename MaskTreeType>

void join | ( | SparseMaskedExtractor< DenseType, MaskTreeType > & | rhs | ) |
| inline

## ◆ operator()()

template<typename DenseType, typename MaskTreeType>

void operator() | ( | const tbb::blocked_range< size_t > & | range | ) |
| inline