OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Execution.hpp File Reference
#include <functional>
#include <type_traits>
#include <utility>
#include <cstddef>
#include <iterator>
#include "libslic3r/libslic3r.h"
Include dependency graph for Execution.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Slic3r::IsExecutionPolicy_< EP >
struct  Slic3r::execution::Traits< EP, En >

Namespaces

namespace  Slic3r
 |/ Copyright (c) Prusa Research 2020 - 2023 Enrico Turri @enricoturri1966 |/ |/ PrusaSlicer is released under the terms of the AGPLv3 or higher |/
namespace  Slic3r::execution

Typedefs

template<class EP, class T = void>
using Slic3r::ExecutionPolicyOnly = std::enable_if_t<IsExecutionPolicy<EP>, T>
template<class EP>
using Slic3r::execution::AsTraits = Traits<remove_cvref_t<EP>>
template<class EP>
using Slic3r::execution::SpinningMutex = typename Traits<EP>::SpinningMutex
template<class EP>
using Slic3r::execution::BlockingMutex = typename Traits<EP>::BlockingMutex

Functions

template<class EP, class = ExecutionPolicyOnly<EP>>
size_t Slic3r::execution::max_concurrency (const EP &ep)
template<class EP, class It, class Fn, class = ExecutionPolicyOnly<EP>>
void Slic3r::execution::for_each (const EP &ep, It from, It to, Fn &&fn, size_t granularity=1)
template<class EP, class I, class MergeFn, class T, class AccessFn, class = ExecutionPolicyOnly<EP>>
T Slic3r::execution::reduce (const EP &ep, I from, I to, const T &init, MergeFn &&mergefn, AccessFn &&accessfn, size_t granularity=1)
template<class EP, class I, class MergeFn, class T, class = ExecutionPolicyOnly<EP>>
T Slic3r::execution::reduce (const EP &ep, I from, I to, const T &init, MergeFn &&mergefn, size_t granularity=1)
template<class EP, class I, class T, class AccessFn, class = ExecutionPolicyOnly<EP>>
T Slic3r::execution::accumulate (const EP &ep, I from, I to, const T &init, AccessFn &&accessfn, size_t granularity=1)
template<class EP, class I, class T, class = ExecutionPolicyOnly<EP>>
T Slic3r::execution::accumulate (const EP &ep, I from, I to, const T &init, size_t granularity=1)

Variables

template<class EP>
constexpr bool Slic3r::IsExecutionPolicy

Class Documentation

◆ Slic3r::execution::Traits

struct Slic3r::execution::Traits
template<class EP, class En = void>
struct Slic3r::execution::Traits< EP, En >
Inheritance diagram for Slic3r::execution::Traits< EP, En >: