ITK  4.13.0
Insight Segmentation and Registration Toolkit
Public Member Functions | Protected Attributes | List of all members
itk::IterationReporter Class Reference

#include <itkIterationReporter.h>

+ Collaboration diagram for itk::IterationReporter:

Detailed Description

Implements iterations tracking for a filter.

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

This class is intended to be used in iterative filter for which a progress cannot be stablished. These filters run until an stopping criterion is reached and it is not possible to anticipate how long it will take to get to the stopping point.

This class is constructed before entering the iteration loop in the filter. The CompletedStep() method should be called at every iteration. The reporter will count the number of calls and will invoke an IterationEvent every certain number of calls. The default period is 100.

Example usage:

IterationReporter iteration(this, threadId, 100);

for( each pixel ) { ... iteration.CompletedStep(); }

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

Definition at line 55 of file itkIterationReporter.h.

Public Member Functions

 IterationReporter (ProcessObject *filter, ThreadIdType threadId, unsigned long stepsPerUpdate=100)
 ~IterationReporter ()
void CompletedStep ()

Protected Attributes

unsigned long m_StepsBeforeUpdate
unsigned long m_StepsPerUpdate
ThreadIdType m_ThreadId

Constructor & Destructor Documentation

itk::IterationReporter::IterationReporter ( ProcessObject filter,
ThreadIdType  threadId,
unsigned long  stepsPerUpdate = 100 

Constructor sets progress to 0 because the filter is starting.

itk::IterationReporter::~IterationReporter ( )


Definition at line 63 of file itkIterationReporter.h.

Member Function Documentation

void itk::IterationReporter::CompletedStep ( )

Called by a filter once per iteration.

Definition at line 66 of file itkIterationReporter.h.

Member Data Documentation

ProcessObject* itk::IterationReporter::m_Filter

Definition at line 81 of file itkIterationReporter.h.

unsigned long itk::IterationReporter::m_StepsBeforeUpdate

Definition at line 84 of file itkIterationReporter.h.

unsigned long itk::IterationReporter::m_StepsPerUpdate

Definition at line 83 of file itkIterationReporter.h.

ThreadIdType itk::IterationReporter::m_ThreadId

Definition at line 82 of file itkIterationReporter.h.

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