|
Open Graph Drawing Framework |
v. 2023.09 (Elderberry)
|
|
|
Go to the documentation of this file.
41 namespace fast_multipole_embedder {
59 template<
typename FuncInvokerType>
97 #ifdef OGDF_HAS_LINUX_CPU_MACROS
145 template<
typename KernelType,
typename ArgType1>
148 KernelType kernel(
thread(i));
The namespace for all OGDF objects.
void setTask(FMETask *pTask)
sets the actual task
The fast multipole embedder work thread class.
FMEFuncInvokerTask(FuncInvokerType f)
constructor with an invoker
void runKernel(ArgType1 arg1)
bool isMainThread() const
returns true if this is the main thread ( the main thread is always the first thread )
void runThreads()
runs one iteration. This call blocks the main thread
FMEThreadPool(uint32_t numThreads)
FMEThreadPool * m_pThreadPool
FMEThreadPool * threadPool() const
returns the ThreadPool this thread belongs to
Definition of utility functions for FME layout.
FMEThread * thread(uint32_t threadNr) const
returns the threadNr-th thread
FuncInvokerType funcInvoker
the invoker
Class used to invoke a functor or function inside a thread.
void operator()()
the main work function
uint32_t numThreads() const
returns the total number of threads in the pool
uint32_t numThreads() const
returns the number of threads in this pool
Representation of a barrier.
The thread task class used only as an interface.
FMEThread & operator=(const FMEThread &)
void sync()
thread sync call
void doWork() override
overrides the task doWork() method and invokes the function or functor
Barrier * syncBarrier() const
returns the barrier instance used to sync the threads during execution
FMEThread(FMEThreadPool *pThreadPool, uint32_t threadNr)
construtor
uint32_t threadNr() const
returns the index of the thread ( 0.. numThreads()-1 )