|
TracktionEngine
|
Manages a set of background tasks that can be run concurrently on a background thread. More...
#include <tracktion_BackgroundJobs.h>
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) |
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.
| tracktion::engine::BackgroundJobManager::BackgroundJobManager | ( | ) |
|
override |
| void tracktion::engine::BackgroundJobManager::addJob | ( | ThreadPoolJobWithProgress * | job, |
| bool | takeOwnership | ||
| ) |
| void tracktion::engine::BackgroundJobManager::removeJob | ( | ThreadPoolJobWithProgress * | job, |
| bool | interruptIfRunning, | ||
| int | timeOutMilliseconds | ||
| ) |
| void tracktion::engine::BackgroundJobManager::stopAndDeleteAllRunningJobs | ( | ) |
| void tracktion::engine::BackgroundJobManager::signalJobShouldExit | ( | const JobInfo & | info | ) |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
| void tracktion::engine::BackgroundJobManager::addListener | ( | Listener * | l | ) |
| void tracktion::engine::BackgroundJobManager::removeListener | ( | Listener * | l | ) |