HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Reduce.h File Reference

A unified wrapper for tbb::parallel_reduce and a naive std::future analog. More...

#include "Range.h"
#include <thread>
#include <future>
#include <vector>
+ Include dependency graph for Reduce.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 nanovdb
 

Functions

template<typename RangeT , typename T , typename FuncT , typename JoinT >
nanovdb::reduce (RangeT range, const T &identity, const FuncT &func, const JoinT &join)
 
template<typename T , typename FuncT , typename JoinT >
nanovdb::reduce (size_t begin, size_t end, size_t grainSize, const T &identity, const FuncT &func, const JoinT &join)
 Simple wrapper to the function defined above. More...
 
template<template< typename...> class ContainerT, typename... ArgT, typename T , typename FuncT , typename JoinT >
nanovdb::reduce (const ContainerT< ArgT...> &c, const T &identity, const FuncT &func, const JoinT &join)
 Simple wrapper that works with std::containers. More...
 
template<template< typename...> class ContainerT, typename... ArgT, typename T , typename FuncT , typename JoinT >
nanovdb::reduce (const ContainerT< ArgT...> &c, size_t grainSize, const T &identity, const FuncT &func, const JoinT &join)
 Simple wrapper that works with std::containers. More...
 

Detailed Description

A unified wrapper for tbb::parallel_reduce and a naive std::future analog.

Author
Ken Museth
Date
March 4, 2021

Definition in file Reduce.h.