MeVisLab Toolbox Reference
|
#include <mlImagingBackgroundTask.h>
Classes | |
class | AsyncTileRequest |
An asynchronous tile request. This is copyable! More... | |
class | ProcessAllPagesRequest |
An asynchronous process all pages request. This is copyable! More... | |
Public Types | |
enum | TileRequestFlags { UseMemoryManager = TileRequest::UseMemoryManager , UseMLAlloc = TileRequest::UseMLAlloc , NoAllocation = TileRequest::NoAllocation , ExternalBuffer = TileRequest::ExternalBuffer , AllocationPolicyMask = 0xf , RequestReadOnlyPage = 16 , ReceiveProgressMessages = 32 } |
Defines flags that can be passed with requestTile(). More... | |
![]() | |
enum | Status { NotInTaskManager , Queued , Running , Finished , Canceled , Suspended } |
Defines current status of the task. More... | |
Public Member Functions | |
ImagingBackgroundTask (void *owner) | |
~ImagingBackgroundTask () override | |
![]() | |
MessagingBackgroundTask (void *ownerArg) | |
template<typename Object , typename Method > | |
void | callMethodOnGUI (const DistantObject< Object > &target, Method method) |
template<typename Object , typename Method , typename Arg1 > | |
void | callMethodOnGUI (const DistantObject< Object > &target, Method method, const Arg1 &arg1) |
template<typename Object , typename Method , typename Arg1 , typename Arg2 > | |
void | callMethodOnGUI (const DistantObject< Object > &target, Method method, const Arg1 &arg1, const Arg2 &arg2) |
template<typename Object , typename Method , typename Arg1 , typename Arg2 , typename Arg3 > | |
void | callMethodOnGUI (const DistantObject< Object > &target, Method method, const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3) |
template<typename Object , typename Method , typename Arg1 , typename Arg2 , typename Arg3 , typename Arg4 > | |
void | callMethodOnGUI (const DistantObject< Object > &target, Method method, const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3, const Arg4 &arg4) |
template<typename Object , typename Method , typename Arg1 , typename Arg2 , typename Arg3 , typename Arg4 , typename Arg5 > | |
void | callMethodOnGUI (const DistantObject< Object > &target, Method method, const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3, const Arg4 &arg4, const Arg5 &arg5) |
![]() | |
BackgroundTask (void *owner) | |
Creates a new task with given owner . | |
virtual | ~BackgroundTask () |
virtual void | run ()=0 |
Method that needs to be reimplemented. This is called from the worker thread. | |
bool | isSynchronous () const |
Checks whether the task is synchronous, which means it is not executed in a different thread. | |
void | setSynchronous (bool flag) |
Sets whether the task is handled synchronously. Call this only in the setup of the task, not while it is already running. | |
void | setSynchronousCancelField (NotifyField *field) |
Sets a cancel field that is used in synchronous mode to check whether cancel was pressed. | |
Status | status () const |
Returns the status of the task. | |
void | cancel () |
Cancels the task (i.e., it sets status to canceled). | |
bool | isCanceled () const |
Checks whether the task was canceled. | |
bool | shouldStop () |
Returns whether the task should stop its work because it has been canceled. | |
void | resume () |
Resumes the task after it was suspended. | |
void | suspend () |
Suspends the task. | |
std::string | statusString () const |
Returns current status string. | |
virtual void | setStatusString (const std::string &status) |
Updates the status string while processing. | |
float | progress () const |
Returns current progress This is thread-safe. | |
virtual void | setProgress (float progress) |
Updates the progress while processing. | |
void | setOwnerWasDeleted () |
Tells the task that its owner was deleted and cancels the thread. | |
bool | hasOwner () const |
Returns whether the owner was deleted. | |
void * | owner () const |
Returns the owner of the task Call this from GUI thread only! | |
void | waitAndExecuteNextMessage () |
Executes the next message. | |
bool | executeNextMessage () |
Executes the next message. | |
void | sendMessageToGUI (BackgroundTaskMessage *message) |
Sends the message to the GUI. | |
void | logMessage (const std::string &message) |
Logs a message. | |
bool | isVerbose () const |
Checks whether task uses verbose logging. | |
void | setVerbose (bool flag) |
Sets whether task uses verbose logging. | |
double | runningTime () const |
Returns the running time in seconds of the task. | |
double | idleTime () const |
Returns the idle time in seconds of the task (e.g., the time it waited for getTile to complete). | |
void | getStatusInformation (BackgroundTaskStatusInformation &info) |
Returns the complete status information. | |
MLuint32 | taskId () const |
Returns the unique id of this task. The id of a task never changes. | |
void | setTaskFinishedCB (BackgroundTaskFinishedCB *callback, void *userdata) |
Set this directly after the initialization of the task from the GUI thread. | |
void | addObserver (Observer *observer) |
Adds the given observer. | |
void | removeObserver (Observer *observer) |
Removes the given observer. | |
Protected Member Functions | |
BackgroundRequestId | generateBackgroundRequestId () |
Generates next generateBackgroundRequestId(). | |
![]() | |
void | sendStatusChangedToObservers () |
Sends the status change to all observers. | |
void | sendStatusStringChangedToObservers () |
Sends the status string change to all observers. | |
void | sendLogMessageToObservers (const std::string &msg) |
Sends the status string change to all observers. | |
void | addIdleTime (double timeInSecs) |
Adds given timeInSecs as spent idle time. | |
Friends | |
class | BackgroundTaskMLGetTileResultMessage |
class | BackgroundTaskMLProcessAllPagesResultMessage |
class | AsyncTileRequest |
class | ProcessAllPagesRequest |
Definition at line 32 of file mlImagingBackgroundTask.h.
Defines flags that can be passed with requestTile().
Note: Only one of the allocation schemes can be used at a time.
Enumerator | |
---|---|
UseMemoryManager | |
UseMLAlloc | |
NoAllocation | |
ExternalBuffer | |
AllocationPolicyMask | |
RequestReadOnlyPage | |
ReceiveProgressMessages |
Definition at line 43 of file mlImagingBackgroundTask.h.
ml::ImagingBackgroundTask::ImagingBackgroundTask | ( | void * | owner | ) |
|
override |
|
inlineprotected |
Generates next generateBackgroundRequestId().
Definition at line 100 of file mlImagingBackgroundTask.h.
Definition at line 107 of file mlImagingBackgroundTask.h.
Definition at line 105 of file mlImagingBackgroundTask.h.
Definition at line 106 of file mlImagingBackgroundTask.h.
Definition at line 108 of file mlImagingBackgroundTask.h.