Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
|
#include <TaskManager.hh>
Public Types | |
typedef TaskManager | this_type |
typedef ThreadPool::size_type | size_type |
Public Member Functions | |
TaskManager (ThreadPool *) | |
virtual | ~TaskManager () |
TaskManager (const this_type &)=delete | |
TaskManager (this_type &&)=default | |
this_type & | operator= (const this_type &)=delete |
this_type & | operator= (this_type &&)=default |
ThreadPool * | thread_pool () const |
size_type | size () const |
void | finalize () |
template<typename... Args> | |
void | exec (Task< Args... > *_task) |
template<typename RetT , typename FuncT , typename... Args> | |
std::future< RetT > | async (FuncT &&func, Args &&... args) |
template<typename RetT , typename FuncT > | |
std::future< RetT > | async (FuncT &&func) |
template<typename FuncT , typename... Args> | |
auto | async (FuncT &&func, Args... args) -> std::future< decay_t< decltype(func(args...))> > |
template<typename RetT , typename ArgT , typename FuncT , typename... Args> | |
Task< RetT, ArgT, Args... > * | wrap (TaskGroup< RetT, ArgT > &tg, FuncT &&func, Args &&... args) |
template<typename RetT , typename ArgT , typename FuncT > | |
Task< RetT, ArgT > * | wrap (TaskGroup< RetT, ArgT > &tg, FuncT &&func) |
template<typename RetT , typename ArgT , typename FuncT , typename... Args> | |
void | exec (TaskGroup< RetT, ArgT > &tg, FuncT &&func, Args &&... args) |
template<typename RetT , typename ArgT , typename FuncT > | |
void | exec (TaskGroup< RetT, ArgT > &tg, FuncT &&func) |
template<typename RetT , typename ArgT , typename FuncT , typename... Args> | |
void | rexec (TaskGroup< RetT, ArgT > &tg, FuncT &&func, Args &&... args) |
template<typename RetT , typename ArgT , typename FuncT > | |
void | rexec (TaskGroup< RetT, ArgT > &tg, FuncT &&func) |
template<typename FuncT , typename... Args> | |
void | rexec (TaskGroup< void, void > &tg, FuncT &&func, Args &&... args) |
template<typename FuncT > | |
void | rexec (TaskGroup< void, void > &tg, FuncT &&func) |
Static Public Member Functions | |
static TaskManager * | GetInstance () |
get the singleton pointer | |
static TaskManager * | GetInstanceIfExists () |
static unsigned | ncores () |
Protected Attributes | |
ThreadPool * | m_pool = nullptr |
Definition at line 50 of file TaskManager.hh.
Definition at line 54 of file TaskManager.hh.
Definition at line 53 of file TaskManager.hh.
|
inlineexplicit |
Definition at line 280 of file TaskManager.hh.
|
inlinevirtual |
Definition at line 289 of file TaskManager.hh.
|
delete |
|
default |
|
inline |
Definition at line 113 of file TaskManager.hh.
|
inline |
Definition at line 100 of file TaskManager.hh.
Referenced by G4TaskRunManagerKernel::ExecuteWorkerInit(), G4TaskRunManagerKernel::ExecuteWorkerTask(), and G4TaskRunManagerKernel::InitializeWorker().
|
inline |
Definition at line 125 of file TaskManager.hh.
|
inline |
Definition at line 91 of file TaskManager.hh.
|
inline |
Definition at line 167 of file TaskManager.hh.
|
inline |
Definition at line 161 of file TaskManager.hh.
|
inline |
Definition at line 83 of file TaskManager.hh.
|
inlinestatic |
get the singleton pointer
Definition at line 258 of file TaskManager.hh.
|
inlinestatic |
Definition at line 273 of file TaskManager.hh.
|
inlinestatic |
Definition at line 70 of file TaskManager.hh.
|
inline |
Definition at line 179 of file TaskManager.hh.
|
inline |
Definition at line 173 of file TaskManager.hh.
|
inline |
Definition at line 193 of file TaskManager.hh.
|
inline |
Definition at line 187 of file TaskManager.hh.
|
inline |
Definition at line 79 of file TaskManager.hh.
|
inline |
Definition at line 75 of file TaskManager.hh.
|
inline |
Definition at line 151 of file TaskManager.hh.
|
inline |
Definition at line 144 of file TaskManager.hh.
|
protected |
Definition at line 235 of file TaskManager.hh.
Referenced by async(), exec(), finalize(), size(), and thread_pool().