Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
|
#include <ThreadData.hh>
Public Types | |
template<typename Tp > | |
using | TaskStack = std::deque< Tp > |
Public Member Functions | |
ThreadData (ThreadPool *tp) | |
~ThreadData () | |
void | update () |
Static Public Member Functions | |
static ThreadData *& | GetInstance () |
Public Attributes | |
bool | is_master |
bool | within_task |
intmax_t | task_depth |
ThreadPool * | thread_pool |
VUserTaskQueue * | current_queue |
TaskStack< VUserTaskQueue * > | queue_stack |
Definition at line 99 of file ThreadData.hh.
using PTL::ThreadData::TaskStack = std::deque<Tp> |
Definition at line 103 of file ThreadData.hh.
ThreadData::ThreadData | ( | ThreadPool * | tp | ) |
Definition at line 43 of file ThreadData.cc.
ThreadData::~ThreadData | ( | ) |
Definition at line 63 of file ThreadData.cc.
|
static |
Definition at line 35 of file ThreadData.cc.
Referenced by PTL::UserTaskQueue::ExecuteOnAllThreads(), PTL::UserTaskQueue::ExecuteOnSpecificThreads(), PTL::ThreadPool::insert(), and PTL::VTaskGroup::wait().
void ThreadData::update | ( | ) |
Definition at line 55 of file ThreadData.cc.
Referenced by PTL::ThreadPool::execute_thread().
VUserTaskQueue* PTL::ThreadData::current_queue |
Definition at line 115 of file ThreadData.hh.
Referenced by PTL::ThreadPool::execute_thread(), ThreadData(), update(), and PTL::VTaskGroup::wait().
bool PTL::ThreadData::is_master |
Definition at line 111 of file ThreadData.hh.
Referenced by PTL::VTaskGroup::wait().
TaskStack<VUserTaskQueue*> PTL::ThreadData::queue_stack |
Definition at line 116 of file ThreadData.hh.
Referenced by update().
intmax_t PTL::ThreadData::task_depth |
Definition at line 113 of file ThreadData.hh.
ThreadPool* PTL::ThreadData::thread_pool |
Definition at line 114 of file ThreadData.hh.
Referenced by update(), and PTL::VTaskGroup::wait().
bool PTL::ThreadData::within_task |
Definition at line 112 of file ThreadData.hh.
Referenced by PTL::ThreadPool::execute_thread(), PTL::UserTaskQueue::InsertTask(), and PTL::VTaskGroup::wait().