|
Geant4 11.3.0
Toolkit for the simulation of the passage of particles through matter
|
#include <TaskManager.hh>
Public Types | |
| using | this_type = TaskManager |
| using | size_type = ThreadPool::size_type |
Public Member Functions | |
| TaskManager (ThreadPool *, bool _manage_pool=true) | |
| virtual | ~TaskManager () noexcept(false) |
| TaskManager (const TaskManager &)=delete | |
| TaskManager (TaskManager &&)=default | |
| TaskManager & | operator= (const TaskManager &)=delete |
| TaskManager & | operator= (TaskManager &&)=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::shared_ptr< PackagedTask< RetT, Args... > > | async (FuncT &&func, Args &&... args) |
| template<typename RetT, typename FuncT> | |
| std::shared_ptr< PackagedTask< RetT > > | async (FuncT &&func) |
| template<typename FuncT, typename... Args> | |
| auto | async (FuncT &&func, Args... args) -> std::shared_ptr< PackagedTask< decay_t< decltype(func(args...))>, Args... > > |
| template<typename RetT, typename ArgT, typename FuncT, typename... Args> | |
| std::shared_ptr< Task< RetT, ArgT, Args... > > | wrap (TaskGroup< RetT, ArgT > &tg, FuncT &&func, Args &&... args) |
| template<typename RetT, typename ArgT, typename FuncT> | |
| std::shared_ptr< 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 |
| bool | m_is_finalized = false |
Definition at line 48 of file TaskManager.hh.
Definition at line 52 of file TaskManager.hh.
Definition at line 51 of file TaskManager.hh.
|
inlineexplicit |
Definition at line 258 of file TaskManager.hh.
Referenced by GetInstance(), operator=(), operator=(), TaskManager(), and TaskManager().
|
inlinevirtual |
Definition at line 268 of file TaskManager.hh.
|
delete |
|
default |
|
inline |
Definition at line 121 of file TaskManager.hh.
|
inline |
Definition at line 107 of file TaskManager.hh.
Referenced by G4TaskRunManagerKernel::ExecuteWorkerInit(), G4TaskRunManagerKernel::ExecuteWorkerTask(), and G4TaskRunManagerKernel::InitializeWorker().
|
inline |
Definition at line 134 of file TaskManager.hh.
|
inline |
Definition at line 96 of file TaskManager.hh.
|
inline |
Definition at line 178 of file TaskManager.hh.
|
inline |
Definition at line 172 of file TaskManager.hh.
|
inline |
Definition at line 81 of file TaskManager.hh.
Referenced by ~TaskManager().
|
inlinestatic |
get the singleton pointer
Definition at line 236 of file TaskManager.hh.
Referenced by operator=().
|
inlinestatic |
Definition at line 251 of file TaskManager.hh.
Referenced by operator=().
|
inlinestatic |
Definition at line 68 of file TaskManager.hh.
Referenced by ncores().
|
delete |
|
default |
|
inline |
Definition at line 190 of file TaskManager.hh.
|
inline |
Definition at line 184 of file TaskManager.hh.
|
inline |
Definition at line 204 of file TaskManager.hh.
|
inline |
Definition at line 198 of file TaskManager.hh.
|
inline |
Definition at line 77 of file TaskManager.hh.
|
inline |
Definition at line 73 of file TaskManager.hh.
|
inline |
Definition at line 162 of file TaskManager.hh.
|
inline |
Definition at line 155 of file TaskManager.hh.
|
protected |
Definition at line 213 of file TaskManager.hh.
Referenced by finalize(), and TaskManager().
|
protected |
Definition at line 212 of file TaskManager.hh.
Referenced by async(), async(), async(), exec(), finalize(), size(), TaskManager(), and thread_pool().