Utopia  2
Framework for studying models of complex & adaptive systems.
Classes | Namespaces | Macros | Enumerations | Functions
parallel.hh File Reference
#include <algorithm>
#include <exception>
#include <tuple>
#include <utopia/core/logging.hh>
#include <utopia/data_io/cfg_utils.hh>
Include dependency graph for parallel.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Utopia::ParallelExecution
 Static information on the status of parallel execution. More...
 

Namespaces

 Utopia
 
 std
 

Macros

#define MAYBE_UNUSED   [[maybe_unused]]
 

Enumerations

enum  Utopia::ExecPolicy { Utopia::seq , Utopia::unseq , Utopia::par , Utopia::par_unseq }
 Runtime execution policies. More...
 

Functions

template<class Func , class... Args>
auto Utopia::exec_parallel (MAYBE_UNUSED const Utopia::ExecPolicy policy, Func &&f, Args &&... args)
 Call a function with an STL execution policy and arguments. More...
 
template<class InputIt , class OutputIt >
OutputIt std::copy (const Utopia::ExecPolicy policy, InputIt first, InputIt last, OutputIt d_first)
 Copy the input range to a new range. More...
 
template<class InputIt , class UnaryFunction >
void std::for_each (const Utopia::ExecPolicy policy, InputIt first, InputIt last, UnaryFunction f)
 Apply a function to a range. More...
 
template<class InputIt , class OutputIt , class UnaryOperation >
OutputIt std::transform (const Utopia::ExecPolicy policy, InputIt first1, InputIt last1, OutputIt d_first, UnaryOperation unary_op)
 Apply a unary operator to a range and store the result in a new range. More...
 
template<class InputIt1 , class InputIt2 , class OutputIt , class BinaryOperation >
OutputIt std::transform (const Utopia::ExecPolicy policy, InputIt1 first1, InputIt1 last1, InputIt2 first2, OutputIt d_first, BinaryOperation binary_op)
 Apply a binary operator to two ranges and store the result in a new range. More...
 

Macro Definition Documentation

◆ MAYBE_UNUSED

#define MAYBE_UNUSED   [[maybe_unused]]