MeshLib C++ Docs
Loading...
Searching...
No Matches
MR::RangeProcessor< TreeT, Transformer > Class Template Reference

Class to use in tbb::parallel_reduce for openvdb::tree transformation. More...

#include <MROpenVDBHelper.h>

Public Types

using InterruptFunc = std::function<bool( void )>
 
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 InTreeAccessor = typename openvdb::tree::ValueAccessor<const TreeT>
 
using OutTreeAccessor = typename openvdb::tree::ValueAccessor<TreeT>
 

Public Member Functions

 RangeProcessor (const openvdb::math::CoordBBox &b, const TreeT &inT, TreeT &outT, const Transformer &xform)
 
 RangeProcessor (const openvdb::math::CoordBBox &b, const TreeT &inTree, const Transformer &xform)
 
 ~RangeProcessor ()
 
 RangeProcessor (RangeProcessor &other, tbb::split)
 Splitting constructor: don't copy the original processor's output tree.
 
void setInterrupt (const InterruptFunc &f)
 
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 (RangeProcessor &other)
 Merge another processor's output tree into this processor's tree.
 

Detailed Description

template<class TreeT, typename Transformer>
class MR::RangeProcessor< TreeT, Transformer >

Class to use in tbb::parallel_reduce for openvdb::tree transformation.

similar to openvdb::RangeProcessor

Template Parameters
TreeTtree type
Transformerfunctor to transform tree

Member Function Documentation

◆ operator()()

template<class TreeT , typename Transformer >
void MR::RangeProcessor< TreeT, Transformer >::operator() ( const TileRange & rCRef)
inline

Transform each non-background tile in the given range.

Skip voxels and background tiles.

Intersect the tile's bounding box with mBBox.


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