TracktionEngine
Classes | Public Member Functions | List of all members
tracktion::engine::BackgroundJobManager Class Reference

Manages a set of background tasks that can be run concurrently on a background thread. More...

Inherits juce::AsyncUpdater, and juce::Timer.

Classes

struct  JobInfo
 
class  Listener
 

Public Member Functions

 BackgroundJobManager ()
 
 ~BackgroundJobManager () override
 
void addJob (ThreadPoolJobWithProgress *job, bool takeOwnership)
 
void removeJob (ThreadPoolJobWithProgress *job, bool interruptIfRunning, int timeOutMilliseconds)
 
void stopAndDeleteAllRunningJobs ()
 
void signalJobShouldExit (const JobInfo &info)
 
JobInfo getJobInfo (int index) const noexcept
 
int getNumJobs () const noexcept
 
float getTotalProgress () const noexcept
 
juce::ThreadPool & getPool () noexcept
 
void addListener (Listener *l)
 
void removeListener (Listener *l)
 

Detailed Description

Manages a set of background tasks that can be run concurrently on a background thread.

This is essentially a wrapper around a ThreadPool which adds a listener interface so you can create UI elements to represent the list.

Constructor & Destructor Documentation

◆ BackgroundJobManager()

tracktion::engine::BackgroundJobManager::BackgroundJobManager ( )

◆ ~BackgroundJobManager()

tracktion::engine::BackgroundJobManager::~BackgroundJobManager ( )
override

Member Function Documentation

◆ addJob()

void tracktion::engine::BackgroundJobManager::addJob ( ThreadPoolJobWithProgress job,
bool  takeOwnership 
)

◆ removeJob()

void tracktion::engine::BackgroundJobManager::removeJob ( ThreadPoolJobWithProgress job,
bool  interruptIfRunning,
int  timeOutMilliseconds 
)

◆ stopAndDeleteAllRunningJobs()

void tracktion::engine::BackgroundJobManager::stopAndDeleteAllRunningJobs ( )

◆ signalJobShouldExit()

void tracktion::engine::BackgroundJobManager::signalJobShouldExit ( const JobInfo info)

◆ getJobInfo()

JobInfo tracktion::engine::BackgroundJobManager::getJobInfo ( int  index) const
noexcept

◆ getNumJobs()

int tracktion::engine::BackgroundJobManager::getNumJobs ( ) const
noexcept

◆ getTotalProgress()

float tracktion::engine::BackgroundJobManager::getTotalProgress ( ) const
noexcept

◆ getPool()

juce::ThreadPool& tracktion::engine::BackgroundJobManager::getPool ( )
noexcept

◆ addListener()

void tracktion::engine::BackgroundJobManager::addListener ( Listener l)

◆ removeListener()

void tracktion::engine::BackgroundJobManager::removeListener ( Listener l)

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