LeechCraft  0.6.70-13729-g7046a9d2a7
Modular cross-platform feature rich live environment.
LC::Util::WorkerThreadBase Class Referenceabstract

#include "workerthreadbase.h"

+ Inheritance diagram for LC::Util::WorkerThreadBase:
+ Collaboration diagram for LC::Util::WorkerThreadBase:

Signals

void rotateFuncs ()
 

Public Member Functions

void SetPaused (bool)
 
template<typename F >
QFuture< std::result_of_t< F()> > ScheduleImpl (F func)
 
template<typename F , typename... Args>
QFuture< std::result_of_t< F(Args...)> > ScheduleImpl (F f, Args &&... args)
 
virtual size_t GetQueueSize ()
 

Protected Member Functions

void run () final
 
virtual void Initialize ()=0
 
virtual void Cleanup ()=0
 

Detailed Description

Definition at line 47 of file workerthreadbase.h.

Member Function Documentation

◆ Cleanup()

virtual void LC::Util::WorkerThreadBase::Cleanup ( )
protectedpure virtual

Implemented in LC::Util::WorkerThread< WorkerType >.

Referenced by run().

+ Here is the caller graph for this function:

◆ GetQueueSize()

size_t LC::Util::WorkerThreadBase::GetQueueSize ( )
virtual

Definition at line 47 of file workerthreadbase.cpp.

◆ Initialize()

virtual void LC::Util::WorkerThreadBase::Initialize ( )
protectedpure virtual

Implemented in LC::Util::WorkerThread< WorkerType >.

Referenced by run().

+ Here is the caller graph for this function:

◆ rotateFuncs

void LC::Util::WorkerThreadBase::rotateFuncs ( )
signal

Referenced by run(), and SetPaused().

+ Here is the caller graph for this function:

◆ run()

void LC::Util::WorkerThreadBase::run ( )
finalprotected

Definition at line 53 of file workerthreadbase.cpp.

References Cleanup(), Initialize(), and rotateFuncs().

+ Here is the call graph for this function:

◆ ScheduleImpl() [1/2]

template<typename F >
QFuture<std::result_of_t<F ()> > LC::Util::WorkerThreadBase::ScheduleImpl ( func)
inline

Definition at line 61 of file workerthreadbase.h.

Referenced by LC::Util::WorkerThread< WorkerType >::ScheduleImpl().

+ Here is the caller graph for this function:

◆ ScheduleImpl() [2/2]

template<typename F , typename... Args>
QFuture<std::result_of_t<F (Args...)> > LC::Util::WorkerThreadBase::ScheduleImpl ( f,
Args &&...  args 
)
inline

Definition at line 82 of file workerthreadbase.h.

References LC::Util::oral::sph::f.

◆ SetPaused()

void LC::Util::WorkerThreadBase::SetPaused ( bool  paused)

Definition at line 37 of file workerthreadbase.cpp.

References rotateFuncs().


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