LeechCraft  0.6.70-18450-gabe19ee3b0
Modular cross-platform feature rich live environment.
LC::Util::Coro::WorkerThread< T, Self > Class Template Reference

#include "workerthread.h"

+ Inheritance diagram for LC::Util::Coro::WorkerThread< T, Self >:
+ Collaboration diagram for LC::Util::Coro::WorkerThread< T, Self >:

Public Member Functions

 WorkerThread (const WorkerThread &thread)=delete
 
 WorkerThread (WorkerThread &&thread)=delete
 
WorkerThreadoperator= (const WorkerThread &thread)=delete
 
WorkerThreadoperator= (WorkerThread &&thread)=delete
 
template<typename... Args>
requires std::constructible_from< T, Args &&... > std::constructible_from< T, Args &&..., Self & > WorkerThread (Args &&... args)
 
template<typename... Args>
requires std::constructible_from< T, Args &&..., Self & > WorkerThread (const Config &config, Args &&... args)
 
template<typename... Args>
requires std::constructible_from< T, Args &&... > WorkerThread (const Config &config, Args &&... args)
 
 ~WorkerThread () override
 
template<typename F , typename... Args, typename R = std::invoke_result_t<F, T&, Args...>>
ContextTask< R > Run (F &&f, Args &&... args)
 
- Public Member Functions inherited from LC::Util::Coro::WorkerThreadBase
 WorkerThreadBase (const Config &config)
 
 ~WorkerThreadBase () override
 

Protected Attributes

Worker_
 
- Protected Attributes inherited from LC::Util::Coro::WorkerThreadBase
QThread Thread_
 

Detailed Description

template<typename T, typename Self>
class LC::Util::Coro::WorkerThread< T, Self >

Definition at line 46 of file workerthread.h.

Constructor & Destructor Documentation

◆ WorkerThread() [1/5]

template<typename T , typename Self >
LC::Util::Coro::WorkerThread< T, Self >::WorkerThread ( const WorkerThread< T, Self > &  thread)
delete

◆ WorkerThread() [2/5]

template<typename T , typename Self >
LC::Util::Coro::WorkerThread< T, Self >::WorkerThread ( WorkerThread< T, Self > &&  thread)
delete

◆ WorkerThread() [3/5]

template<typename T , typename Self >
template<typename... Args>
requires std::constructible_from<T, Args&&...> std::constructible_from<T, Args&&..., Self&> LC::Util::Coro::WorkerThread< T, Self >::WorkerThread ( Args &&...  args)
inlineexplicit

Definition at line 58 of file workerthread.h.

◆ WorkerThread() [4/5]

template<typename T , typename Self >
template<typename... Args>
requires std::constructible_from<T, Args&&..., Self&> LC::Util::Coro::WorkerThread< T, Self >::WorkerThread ( const Config config,
Args &&...  args 
)
inlineexplicit

Definition at line 65 of file workerthread.h.

◆ WorkerThread() [5/5]

template<typename T , typename Self >
template<typename... Args>
requires std::constructible_from<T, Args&&...> LC::Util::Coro::WorkerThread< T, Self >::WorkerThread ( const Config config,
Args &&...  args 
)
inlineexplicit

Definition at line 72 of file workerthread.h.

◆ ~WorkerThread()

template<typename T , typename Self >
LC::Util::Coro::WorkerThread< T, Self >::~WorkerThread ( )
inlineoverride

Definition at line 79 of file workerthread.h.

References LC::Util::Coro::WorkerThread< T, Self >::Worker_.

Member Function Documentation

◆ operator=() [1/2]

template<typename T , typename Self >
WorkerThread& LC::Util::Coro::WorkerThread< T, Self >::operator= ( const WorkerThread< T, Self > &  thread)
delete

◆ operator=() [2/2]

template<typename T , typename Self >
WorkerThread& LC::Util::Coro::WorkerThread< T, Self >::operator= ( WorkerThread< T, Self > &&  thread)
delete

◆ Run()

template<typename T , typename Self >
template<typename F , typename... Args, typename R = std::invoke_result_t<F, T&, Args...>>
ContextTask<R> LC::Util::Coro::WorkerThread< T, Self >::Run ( F &&  f,
Args &&...  args 
)
inline

Definition at line 87 of file workerthread.h.

References LC::Util::oral::sph::f, LC::Util::MetaMethod(), and LC::Util::Coro::WorkerThread< T, Self >::Worker_.

+ Here is the call graph for this function:

Member Data Documentation

◆ Worker_

template<typename T , typename Self >
T LC::Util::Coro::WorkerThread< T, Self >::Worker_
protected

The documentation for this class was generated from the following file: