#include <nprogressmanager.h>
Inheritance diagram for regina::NProgressManager:
Public Member Functions | |
NProgressManager () | |
Creates a new progress manager with no NProgress to manage. | |
~NProgressManager () | |
Destroys this manager as well as the corresponding NProgress. | |
bool | isStarted () const |
Determines if an NProgress has been assigned to this manager yet. | |
bool | isFinished () const |
Determines if the NProgress that we are managing has finished. | |
const NProgress * | getProgress () const |
Returns the NProgress that this manager is managing. | |
void | setProgress (NProgress *newProgress) |
Assigns the given NProgress to this manager to manage. | |
void | writeTextShort (std::ostream &out) const |
Writes this object in short text format to the given output stream. |
The life cycle of an NProgressManager and the corresponding NProgress is as follows. Note that the reading thread is the interface thread that is querying the state of progress, and the writing thread is the thread in which the operation is actually being performed.
true
;true
, displays the final progress message to the user and destroys the NProgressManager.true
the reading thread might destroy the NProgressManager and thus the NProgress at any time. The writing thread cannot destroy these objects because it has no guarantee that the reading thread is not still reading progress reports from them.
|
Creates a new progress manager with no NProgress to manage.
|
|
Destroys this manager as well as the corresponding NProgress.
|
|
Returns the NProgress that this manager is managing.
If isStarted() returns
|
|
Determines if the NProgress that we are managing has finished.
That is, this routine determines if NProgress::isFinished() returns
Once this routine returns
|
|
Determines if an NProgress has been assigned to this manager yet.
Once this routine returns
|
|
Assigns the given NProgress to this manager to manage.
|
|
Writes this object in short text format to the given output stream. The output should fit on a single line and no newline should be written.
Implements regina::ShareableObject. |