ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itk::ProgressReporter Class Reference

#include <itkProgressReporter.h>

Detailed Description

Implements progress tracking for a filter.

This is a utility class for use by filter implementations in GenerateData() and ThreadedGenerateData().

The class constructor sets the progress to 0, and the destructor sets it to 1. In between, there should be one call to CompletedPixel() per pixel. The reporter will automatically update the filter's progress at an interval resulting in the specified number of updates. The default number of updates is 100.

Example usage:

ProgressReporter progress(this, threadId,
threadRegion.GetNumberOfPixels(), 100);
for( each pixel )
{
...
progress.CompletedPixel();
}
ProgressReporter(ProcessObject *filter, ThreadIdType threadId, SizeValueType numberOfPixels, SizeValueType numberOfUpdates=100, float initialProgress=0.0f, float progressWeight=1.0f)

When used in a non-threaded filter, the threadId argument should be 0.

See also
This class is a tool for filter implementers to equip a filter to report on its progress. For information on how to acquire this progress information, see:

Definition at line 60 of file itkProgressReporter.h.

+ Collaboration diagram for itk::ProgressReporter:

Public Member Functions

 ProgressReporter (ProcessObject *filter, ThreadIdType threadId, SizeValueType numberOfPixels, SizeValueType numberOfUpdates=100, float initialProgress=0.0f, float progressWeight=1.0f)
 
 ~ProgressReporter ()
 
void CheckAbortGenerateData ()
 
void CompletedPixel ()
 

Protected Attributes

SizeValueType m_CurrentPixel { 0 }
 
ProcessObjectm_Filter
 
float m_InitialProgress
 
float m_InverseNumberOfPixels
 
SizeValueType m_PixelsBeforeUpdate
 
SizeValueType m_PixelsPerUpdate
 
float m_ProgressWeight
 
ThreadIdType m_ThreadId
 

Constructor & Destructor Documentation

◆ ProgressReporter()

itk::ProgressReporter::ProgressReporter ( ProcessObject * filter,
ThreadIdType threadId,
SizeValueType numberOfPixels,
SizeValueType numberOfUpdates = 100,
float initialProgress = 0.0f,
float progressWeight = 1.0f )

Constructor sets progress to 0 because the filter is starting.

◆ ~ProgressReporter()

itk::ProgressReporter::~ProgressReporter ( )

Destructor sets progress to 1 because the filter has finished.

Member Function Documentation

◆ CheckAbortGenerateData()

void itk::ProgressReporter::CheckAbortGenerateData ( )
inline

Check if the filter has the ProcessObject::AbortGenerateData flag set. If true, then a ProcessAborted exception will be thrown.

Definition at line 80 of file itkProgressReporter.h.

References m_Filter, and itk::ExceptionObject::SetDescription().

Referenced by CompletedPixel().

◆ CompletedPixel()

Member Data Documentation

◆ m_CurrentPixel

SizeValueType itk::ProgressReporter::m_CurrentPixel { 0 }
protected

Definition at line 119 of file itkProgressReporter.h.

Referenced by CompletedPixel().

◆ m_Filter

ProcessObject* itk::ProgressReporter::m_Filter
protected

Definition at line 116 of file itkProgressReporter.h.

Referenced by CheckAbortGenerateData(), and CompletedPixel().

◆ m_InitialProgress

float itk::ProgressReporter::m_InitialProgress
protected

Definition at line 122 of file itkProgressReporter.h.

Referenced by CompletedPixel().

◆ m_InverseNumberOfPixels

float itk::ProgressReporter::m_InverseNumberOfPixels
protected

Definition at line 118 of file itkProgressReporter.h.

Referenced by CompletedPixel().

◆ m_PixelsBeforeUpdate

SizeValueType itk::ProgressReporter::m_PixelsBeforeUpdate
protected

Definition at line 121 of file itkProgressReporter.h.

Referenced by CompletedPixel().

◆ m_PixelsPerUpdate

SizeValueType itk::ProgressReporter::m_PixelsPerUpdate
protected

Definition at line 120 of file itkProgressReporter.h.

Referenced by CompletedPixel().

◆ m_ProgressWeight

float itk::ProgressReporter::m_ProgressWeight
protected

Definition at line 123 of file itkProgressReporter.h.

Referenced by CompletedPixel().

◆ m_ThreadId

ThreadIdType itk::ProgressReporter::m_ThreadId
protected

Definition at line 117 of file itkProgressReporter.h.

Referenced by CompletedPixel().


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