27template <
typename I,
typename F,
typename ...Cb>
30 if constexpr (
sizeof...( cb ) == 0 )
34 std::forward<F>( f )(
I( i ) );
41 std::forward<F>( f )(
I( i ) );
45 }, std::forward<Cb>( cb )... );
53template <
typename I,
typename L,
typename F,
typename ...Cb>
58 std::forward<F>( f )(
I( i ), *(L*)ctx );
62 }, std::forward<Cb>( cb )... );
68template <
typename T,
typename ...F>
71 return ParallelFor(
size_t(0), v.size(), std::forward<F>( f )... );
77template <
typename T,
typename I,
typename ...F>
86template <
typename T,
typename I,
typename ...F>
#define MRMESH_API
Definition MRMeshFwd.h:80
std::vector<V>-like container that is 1) resized without initialization of its elements,...
Definition MRBuffer.h:58
Definition MRFunctional.h:15
std::vector<T>-like container that requires specific indexing type,
Definition MRVector.h:23
void parallelFor(size_t begin, size_t end, FunctionRef< void(size_t)> f)
auto ParallelFor(I begin, I end, F &&f, Cb &&... cb)
Definition MRParallelFor.h:28
std::function< bool(float)> ProgressCallback
Definition MRMeshFwd.h:753
I beginId() const
returns the identifier of the first element
Definition MRBuffer.h:105
I beginId() const
returns the identifier of the first element
Definition MRVector.h:145
class MRMESH_CLASS I
Definition MRMeshFwd.h:137
I endId() const
returns backId() + 1
Definition MRBuffer.h:111
I endId() const
returns backId() + 1
Definition MRVector.h:151
auto begin(ViewportMask mask)
Definition MRViewportId.h:122
auto end(ViewportMask)
Definition MRViewportId.h:124
only for bindings generation
Definition MRCameraOrientationPlugin.h:8