Isis Developer Reference
Isis::Progress Class Reference

Program progress reporter. More...

#include <Progress.h>

Collaboration diagram for Isis::Progress:
Collaboration graph

Public Member Functions

 Progress ()
 Constructs a Progress object.
 
 ~Progress ()
 Destroys the Progress object.
 
void SetText (const QString &text)
 Changes the value of the text string reported just before 0% processed.
 
QString Text () const
 Returns the text to output.
 
void SetMaximumSteps (const int steps)
 This sets the maximum number of steps in the process.
 
void AddSteps (const int steps)
 If the initial step size was a guess, it can be modified using this method.
 
void CheckStatus ()
 Checks and updates the status.
 
void DisableAutomaticDisplay ()
 Turns off updating the Isis Gui when CheckStatus() is called.
 
int MaximumSteps () const
 Returns the maximum number of steps of the progress.
 
int CurrentStep () const
 Returns the current step of the progress.
 

Detailed Description

Program progress reporter.

This class is used to output the percent completion for programs in either the command line mode or the graphical user interface. Generally, this object is created within a Process derived class. Therefore you should only use this object if you are developing such a class.

Author
2002-05-22 Jeff Anderson

Constructor & Destructor Documentation

◆ Progress()

Isis::Progress::Progress ( )

Constructs a Progress object.

Exceptions
Isis::iException::User

References _FILEINFO_, Isis::Preference::Preferences(), and Isis::IException::User.

◆ ~Progress()

Isis::Progress::~Progress ( )

Destroys the Progress object.

Member Function Documentation

◆ AddSteps()

void Isis::Progress::AddSteps ( const int steps)

If the initial step size was a guess, it can be modified using this method.

For example, if you SetMaximumSteps(11) then call AddSteps(1) then the new MaximumSteps is 12. The progress bar will not go backwards (it will not drop from 10% to 5%). "steps" can be negative to remove steps.

Parameters
stepsAmount to adjust the MaximumSteps by

References _FILEINFO_, and Isis::IException::Programmer.

Referenced by Isis::OverlapStatistics::OverlapStatistics().

◆ CheckStatus()

void Isis::Progress::CheckStatus ( )

Checks and updates the status.

The first time this is invoked, it outputs the text from SetText and 0% processed. It should then be invoked for each step, for example, a step could be considered processing a line for NL lines in the image. If you do not call this enough times you will not reached 100% processed.

Exceptions
IException::ProgrammerStep exceeds maximumSteps

References _FILEINFO_, Isis::iApp, and Isis::IException::Programmer.

Referenced by Isis::Process::CalculateStatistics(), Isis::GroundGrid::CreateGrid(), Isis::InterestOperator::FindCnetRef(), Isis::ControlNetStatistics::GenerateImageStats(), Isis::ControlNetStatistics::GeneratePointStats(), Isis::Cube::histogram(), Isis::ImageHistogram::ImageHistogram(), Isis::OverlapStatistics::OverlapStatistics(), Isis::ProcessImport::ProcessBil(), Isis::ProcessImport::ProcessBip(), Isis::ProcessImport::ProcessBsq(), Isis::ProcessExport::ProcessCubes(), Isis::ProcessImport::ProcessJp2(), Isis::ProcessRubberSheet::processPatchTransform(), Isis::ControlNet::ReadControl(), Isis::SerialNumberList::SerialNumberList(), Isis::LidarData::SetImages(), Isis::ControlNet::SetImages(), Isis::ProcessMosaic::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessExport::StartProcess(), Isis::ProcessRubberSheet::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessExport::StartProcess(), Isis::ProcessByBoxcar::StartProcess(), Isis::ProcessByQuickFilter::StartProcess(), Isis::ProcessByBrick::StartProcess(), and Isis::Cube::statistics().

◆ CurrentStep()

int Isis::Progress::CurrentStep ( ) const

Returns the current step of the progress.

This value should always be in the range of: [0, MaximumSteps()]. CheckStatus() increments the current step.

See also
CheckStatus()
Returns
The current step of the progress

Referenced by Isis::ImportControlNetWorkOrder::execute().

◆ DisableAutomaticDisplay()

void Isis::Progress::DisableAutomaticDisplay ( )

Turns off updating the Isis Gui when CheckStatus() is called.

You must use RedrawProgress() to visually update the current progress.

Referenced by Isis::ImportControlNetWorkOrder::execute().

◆ MaximumSteps()

int Isis::Progress::MaximumSteps ( ) const

Returns the maximum number of steps of the progress.

See also
SetMaximumSteps()
Returns
The maximum number of steps of the progress.

Referenced by Isis::ImportControlNetWorkOrder::execute().

◆ SetMaximumSteps()

◆ SetText()

◆ Text()

QString Isis::Progress::Text ( ) const

Returns the text to output.

Generally, this in not needed except rare circumstances where an application has multiple steps and the text string needs to be saved and restored.

Returns
string

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