Progress Class Reference

Progress reporting interface. More...

#include <Progress.h>

Inheritance diagram for Progress:

Inheritance graph

List of all members.

Public Member Functions

virtual void updateProgress (const std::string &text, int percent, ReportingLevel gran)=0
virtual void getProgress (std::string &text, int &percent, ReportingLevel &gran) const =0

Static Public Member Functions

static bool getSettingAutoClose ()
static bool hasSettingAutoClose ()
static void setSettingAutoClose (bool newValue, bool setIfSame=false)
static std::string getSettingAutoCloseKey ()

Protected Member Functions

virtual ~Progress ()


Detailed Description

Progress reporting interface.

This object serves as a collector of progress/activity notifications. Whenever it receives an update, it notifies any clients that might have registered with the object so they can interrogate what the change was and render/react to it as appropriate.

This subclass of Subject will notify upon the following conditions:

See also:
Subject
Examples:

Tutorial/Tutorial1.cpp, Tutorial/Tutorial2.cpp, Tutorial/Tutorial3.cpp, Tutorial/Tutorial4.cpp, and Tutorial/Tutorial5.cpp.

Definition at line 56 of file Progress.h.


Constructor & Destructor Documentation

virtual Progress::~Progress (  )  [protected, virtual]

This should be destroyed by calling UtilityServices::destroyProgress.

Definition at line 140 of file Progress.h.


Member Function Documentation

static bool Progress::getSettingAutoClose (  )  [static]

Returns the current value for this setting.

If this setting does not exist in ConfigurationSettings, a verification error will be logged to the message log and potentially a verification error message box will be displayed to the user.

Please see Settings Macros for more details

Returns:
the current value for this setting.

Definition at line 69 of file Progress.h.

static bool Progress::hasSettingAutoClose (  )  [static]

Returns true if this setting exists and has a value in ConfigurationSettings.

Please see Settings Macros for more details

Returns:
true if this setting exists, false otherwise.

Definition at line 76 of file Progress.h.

static void Progress::setSettingAutoClose ( bool  newValue,
bool  setIfSame = false 
) [static]

Changes the current value of this setting to the new value.

Please see Settings Macros for more details

Parameters:
newValue the new value for this setting.
setIfSame If true, the value will be set into ConfigurationSettings even if the newValue and existing value are the same. This has the side-effect of making the value a per-user setting and stored in the user's configuration file. If false, this value will only be set if the newValue and existing value are different. Therefore the value will only be stored in the user's configuration file if the newValue is unique to the user.

Definition at line 92 of file Progress.h.

static std::string Progress::getSettingAutoCloseKey (  )  [static]

Returns the key for this setting that could be passed to ConfigurationSettings::getSetting() or ConfigurationSettings::setSetting().

Please see Settings Macros for more details

Returns:
the key used for this setting.

Definition at line 100 of file Progress.h.

virtual void Progress::updateProgress ( const std::string &  text,
int  percent,
ReportingLevel  gran 
) [pure virtual]

Indicate that some activity has taken place.

Parameters:
text Message indicating the nature of the activity being reported.
percent For partial completion status changes, this figure represents what percent (0-100) of the activity has cumulatively been completed.
gran Reporting level granularity, allowing clients to filter out activity changes they are not interested in. For example, most clients would ignore debugging mode notifications.
Subject Notifications:
This method will notify Subject::signalModified.
Examples:
Tutorial/Tutorial1.cpp, Tutorial/Tutorial2.cpp, Tutorial/Tutorial3.cpp, Tutorial/Tutorial4.cpp, and Tutorial/Tutorial5.cpp.

virtual void Progress::getProgress ( std::string &  text,
int &  percent,
ReportingLevel gran 
) const [pure virtual]

Report the activity that has taken place.

Parameters:
text Message indicating the nature of the activity being reported.
percent For partial completion status changes, this figure represents what percent (0-100) of the activity has cumulatively been completed.
gran Reporting level granularity, allowing clients to filter out activity changes they are not interested in. For example, most clients would ignore debugging mode notifications.


Software Development Kit - Opticks 4.9.0 Build 16218