Class to use in tbb::parallel_reduce for tree operations that do not require an output tree. More...
#include <MROpenVDBHelper.h>
Public Types | |
| using | InterruptFunc = std::function<bool( void )> |
| using | ProgressHolder = std::shared_ptr<RangeProgress> |
| using | ValueT = typename TreeT::ValueType |
| using | LeafIterT = typename TreeT::LeafCIter |
| using | TileIterT = typename TreeT::ValueAllCIter |
| using | LeafRange = typename openvdb::tree::IteratorRange<LeafIterT> |
| using | TileRange = typename openvdb::tree::IteratorRange<TileIterT> |
| using | TreeAccessor = typename openvdb::tree::ValueAccessor<const TreeT> |
Public Member Functions | |
| RangeProcessorSingle (const openvdb::math::CoordBBox &b, const TreeT &inT, const Proc &proc) | |
| RangeProcessorSingle (RangeProcessorSingle &other, tbb::split) | |
| Splitting constructor: don't copy the original processor's output tree. | |
| void | setInterrupt (const InterruptFunc &f) |
| void | setProgressHolder (ProgressHolder progressHolder) |
| void | operator() (const LeafRange &rCRef) |
| Transform each leaf node in the given range. | |
| void | operator() (const TileRange &rCRef) |
| Transform each non-background tile in the given range. | |
| void | join (RangeProcessorSingle &other) |
| Merge another processor's output tree into this processor's tree. | |
Public Attributes | |
| Proc | mProc |
Class to use in tbb::parallel_reduce for tree operations that do not require an output tree.
| TreeT | tree type |
| Proc | functor for operations on a tree |
| using MR::RangeProcessorSingle< TreeT, Proc >::InterruptFunc = std::function<bool( void )> |
| using MR::RangeProcessorSingle< TreeT, Proc >::LeafIterT = typename TreeT::LeafCIter |
| using MR::RangeProcessorSingle< TreeT, Proc >::LeafRange = typename openvdb::tree::IteratorRange<LeafIterT> |
| using MR::RangeProcessorSingle< TreeT, Proc >::ProgressHolder = std::shared_ptr<RangeProgress> |
| using MR::RangeProcessorSingle< TreeT, Proc >::TileIterT = typename TreeT::ValueAllCIter |
| using MR::RangeProcessorSingle< TreeT, Proc >::TileRange = typename openvdb::tree::IteratorRange<TileIterT> |
| using MR::RangeProcessorSingle< TreeT, Proc >::TreeAccessor = typename openvdb::tree::ValueAccessor<const TreeT> |
| using MR::RangeProcessorSingle< TreeT, Proc >::ValueT = typename TreeT::ValueType |
|
inline |
|
inline |
Splitting constructor: don't copy the original processor's output tree.
|
inline |
Merge another processor's output tree into this processor's tree.
|
inline |
Transform each leaf node in the given range.
|
inline |
Transform each non-background tile in the given range.
|
inline |
|
inline |
| Proc MR::RangeProcessorSingle< TreeT, Proc >::mProc |