HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb::OPENVDB_VERSION_NAME::tools::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 <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::OPENVDB_VERSION_NAME::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.

Definition at line 403 of file DenseSparseTools.h.

Member Typedef Documentation

template<typename DenseType , typename MaskTreeType >
using openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::_ResultTreeType = typename DSConverter<DenseType, MaskTreeType>::Type

Definition at line 406 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
using openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::DenseValueType = ResultValueType

Definition at line 410 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
using openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::MaskLeafCIter = typename MaskTree::LeafCIter

Definition at line 413 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
using openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::MaskLeafVec = std::vector<const typename MaskTree::LeafNodeType*>

Definition at line 414 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
using openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::MaskTree = typename ResultTreeType::template ValueConverter<ValueMask>::Type

Definition at line 412 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
using openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::ResultLeafNodeType = typename ResultTreeType::LeafNodeType

Definition at line 408 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
using openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::ResultTreeType = _ResultTreeType

Definition at line 407 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
using openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::ResultValueType = typename ResultTreeType::ValueType

Definition at line 409 of file DenseSparseTools.h.

Constructor & Destructor Documentation

template<typename DenseType , typename MaskTreeType >
openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::SparseMaskedExtractor ( const DenseType &  dense,
const ResultValueType background,
const MaskLeafVec leafVec 
)
inline

Definition at line 417 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::SparseMaskedExtractor ( const SparseMaskedExtractor< DenseType, MaskTreeType > &  other,
tbb::split   
)
inline

Definition at line 426 of file DenseSparseTools.h.

Member Function Documentation

template<typename DenseType , typename MaskTreeType >
ResultTreeType::Ptr openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::extract ( bool  threaded = true)
inline

Definition at line 431 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
void openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::join ( SparseMaskedExtractor< DenseType, MaskTreeType > &  rhs)
inline

Definition at line 536 of file DenseSparseTools.h.

template<typename DenseType , typename MaskTreeType >
void openvdb::OPENVDB_VERSION_NAME::tools::SparseMaskedExtractor< DenseType, MaskTreeType >::operator() ( const tbb::blocked_range< size_t > &  range)
inline

Definition at line 446 of file DenseSparseTools.h.


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