MeshLib C++ Docs
Loading...
Searching...
No Matches
MRBitSetParallelFor.h File Reference
#include "MRBitSet.h"
#include "MRFunctional.h"
#include "MRParallel.h"
#include "MRProgressCallback.h"

Go to the source code of this file.

Classes

struct  MR::IdRange< Id >
 range of indices [beg, end) More...
 

Namespaces

namespace  MR
 only for bindings generation
 
namespace  MR::BitSetParallel
 

Typedefs

using MR::BitSetParallel::Range = tbb::blocked_range<size_t>
 

Functions

template<typename IndexType >
auto MR::BitSetParallel::blockRange (const IdRange< IndexType > &bitRange)
 
template<typename BS >
auto MR::BitSetParallel::blockRange (const BS &bs)
 
template<typename BS >
auto MR::BitSetParallel::bitRange (const BS &bs)
 
template<typename IndexType >
auto MR::BitSetParallel::bitSubRange (const IdRange< IndexType > &bitRange, const tbb::blocked_range< size_t > &range, const tbb::blocked_range< size_t > &subRange)
 
MRMESH_API void MR::BitSetParallel::forAllRanged (const Range &bitRange, FunctionRef< void(size_t, const Range &)> f)
 
MRMESH_API void MR::BitSetParallel::forAllRanged (const Range &bitRange, FunctionRef< void(size_t, const Range &, void *)> f, FunctionRef< void *()> ctx)
 
MRMESH_API bool MR::BitSetParallel::forAllRanged (const Range &bitRange, FunctionRef< void(size_t, const Range &, void *)> f, FunctionRef< void *()> ctx, ProgressCallback progressCb, size_t reportProgressEveryBit=1024)
 
template<typename BS , typename F , typename ... Cb>
auto MR::BitSetParallel::ForAllRanged (const BS &bs, F &&f, Cb &&... cb)
 
template<typename BS , typename L , typename F , typename ... Cb>
auto MR::BitSetParallel::ForAllRanged (const BS &bs, tbb::enumerable_thread_specific< L > &e, F &&f, Cb &&... cb)
 
template<typename BS , typename ... F>
auto MR::BitSetParallelForAllRanged (const BS &bs, F &&... f)
 namespace BitSetParallel
 
template<typename BS , typename L , typename ... F>
auto MR::BitSetParallelForAllRanged (const BS &bs, tbb::enumerable_thread_specific< L > &e, F &&... f)
 
template<typename BS , typename F , typename ... Cb>
auto MR::BitSetParallelForAll (const BS &bs, F &&f, Cb &&... cb)
 
template<typename BS , typename L , typename F , typename ... Cb>
auto MR::BitSetParallelForAll (const BS &bs, tbb::enumerable_thread_specific< L > &e, F &&f, Cb &&... cb)
 
template<typename BS , typename F , typename ... Cb>
auto MR::BitSetParallelFor (const BS &bs, F &&f, Cb &&... cb)
 
template<typename BS , typename L , typename F , typename ... Cb>
auto MR::BitSetParallelFor (const BS &bs, tbb::enumerable_thread_specific< L > &e, F &&f, Cb &&... cb)