Definition at line 26 of file TSequentialExecutor.hxx.
|
| TSequentialExecutor ()=default |
|
| TSequentialExecutor (const TSequentialExecutor &)=delete |
|
template<class F , class T > |
void | Foreach (F func, const std::vector< T > &args) |
| Execute a function over the elements of an immutable vector, dividing the execution in nChunks.
|
|
template<class F , class INTEGER > |
void | Foreach (F func, ROOT::TSeq< INTEGER > args) |
| Execute a function over a sequence of indexes, dividing the execution in nChunks.
|
|
template<class F , class T > |
void | Foreach (F func, std::initializer_list< T > args) |
| Execute a function over the elements of an initializer_list, dividing the execution in nChunks.
|
|
template<class F , class T > |
void | Foreach (F func, std::vector< T > &args) |
| Execute a function over the elements of a vector, dividing the execution in nChunks.
|
|
template<class F > |
void | Foreach (F func, unsigned nTimes) |
| Execute a function without arguments several times, dividing the execution in nChunks.
|
|
unsigned | GetPoolSize () const |
| Return the number of workers in the sequential executor: a single one.
|
|
TSequentialExecutor & | operator= (const TSequentialExecutor &)=delete |
|
| TExecutorCRTP ()=default |
|
| TExecutorCRTP (const TExecutorCRTP &)=delete |
|
auto | Map (F func, const std::vector< T > &args) -> std::vector< typename std::result_of< F(T)>::type > |
| Execute a function over the elements of an immutable vector.
|
|
auto | Map (F func, ROOT::TSeq< INTEGER > args) -> std::vector< typename std::result_of< F(INTEGER)>::type > |
| Execute a function over a sequence of indexes.
|
|
auto | Map (F func, std::initializer_list< T > args) -> std::vector< typename std::result_of< F(T)>::type > |
| Execute a function over the elements of an initializer_list.
|
|
auto | Map (F func, std::vector< T > &args) -> std::vector< typename std::result_of< F(T)>::type > |
| Execute a function over the elements of a vector.
|
|
auto | Map (F func, unsigned nTimes) -> std::vector< typename std::result_of< F()>::type > |
| Execute a function without arguments several times.
|
|
T * | MapReduce (F func, const std::vector< T * > &args) |
| Execute a function over the TObject-inheriting elements of an immutable vector (Map) and merge the objects into a single one (Reduce).
|
|
auto | MapReduce (F func, const std::vector< T > &args, R redfunc) -> typename std::result_of< F(T)>::type |
| Execute a function over the elements of an immutable vector (Map) and accumulate the results into a single value (Reduce).
|
|
auto | MapReduce (F func, ROOT::TSeq< INTEGER > args, R redfunc) -> typename std::result_of< F(INTEGER)>::type |
| Execute a function over a sequence of indexes (Map) and accumulate the results into a single value (Reduce).
|
|
auto | MapReduce (F func, std::initializer_list< T > args, R redfunc) -> typename std::result_of< F(T)>::type |
| Execute a function over the elements of an initializer_list (Map) and accumulate the results into a single value (Reduce).
|
|
T * | MapReduce (F func, std::vector< T * > &args) |
| Execute a function over the TObject-inheriting elements of a vector (Map) and merge the objects into a single one (Reduce).
|
|
auto | MapReduce (F func, std::vector< T > &args, R redfunc) -> typename std::result_of< F(T)>::type |
| Execute a function over the elements of a vector (Map) and accumulate the results into a single value (Reduce).
|
|
auto | MapReduce (F func, unsigned nTimes, R redfunc) -> typename std::result_of< F()>::type |
| Execute a function without arguments several times (Map) and accumulate the results into a single value (Reduce).
|
|
TExecutorCRTP & | operator= (const TExecutorCRTP &)=delete |
|
T * | Reduce (const std::vector< T * > &mergeObjs) |
| "Reduce" an std::vector into a single object by using the object's Merge method.
|
|
auto | Reduce (const std::vector< T > &objs, R redfunc) -> decltype(redfunc(objs)) |
| "Reduce" an std::vector into a single object by passing a function as the second argument defining the reduction operation.
|
|
|
template<class F , class T , class Cond = noReferenceCond<F, T>> |
auto | MapImpl (F func, const std::vector< T > &args) -> std::vector< typename std::result_of< F(T)>::type > |
| Execute a function over the elements of an immutable vector.
|
|
template<class F , class INTEGER , class Cond = noReferenceCond<F, INTEGER>> |
auto | MapImpl (F func, ROOT::TSeq< INTEGER > args) -> std::vector< typename std::result_of< F(INTEGER)>::type > |
| Execute a function over a sequence of indexes.
|
|
template<class F , class T , class Cond = noReferenceCond<F, T>> |
auto | MapImpl (F func, std::vector< T > &args) -> std::vector< typename std::result_of< F(T)>::type > |
| Execute a function over the elements of a vector in parallel Implementation of the Map method.
|
|
template<class F , class Cond = noReferenceCond<F>> |
auto | MapImpl (F func, unsigned nTimes) -> std::vector< typename std::result_of< F()>::type > |
| Execute a function without arguments several times.
|
|