ITK  4.1.0
Insight Segmentation and Registration Toolkit
Public Member Functions | Protected Member Functions | Private Types | Private Attributes
itk::SimpleFilterWatcher Class Reference

#include <itkSimpleFilterWatcher.h>

+ Inheritance diagram for itk::SimpleFilterWatcher:
+ Collaboration diagram for itk::SimpleFilterWatcher:

List of all members.

Public Member Functions

std::string GetComment ()
const char * GetNameOfClass ()
ProcessObjectGetProcess ()
TimeProbeGetTimeProbe ()
void operator= (const SimpleFilterWatcher &)
 SimpleFilterWatcher (itk::ProcessObject *o, const char *comment="")
 SimpleFilterWatcher (const SimpleFilterWatcher &)
 SimpleFilterWatcher ()
virtual ~SimpleFilterWatcher ()
void QuietOn ()
void QuietOff ()
void TestAbortOn ()
void TestAbortOff ()
void SetSteps (int val)
int GetSteps ()
void SetIterations (int val)
int GetIterations ()
void SetQuiet (bool val)
bool GetQuiet ()

Protected Member Functions

virtual void ShowAbort ()
virtual void ShowIteration ()
virtual void ShowProgress ()
virtual void StartFilter ()
virtual void EndFilter ()

Private Types

typedef SimpleMemberCommand
< SimpleFilterWatcher
CommandType

Private Attributes

CommandType::Pointer m_AbortFilterCommand
unsigned long m_AbortTag
std::string m_Comment
CommandType::Pointer m_EndFilterCommand
unsigned long m_EndTag
CommandType::Pointer m_IterationFilterCommand
int m_Iterations
unsigned long m_IterationTag
itk::ProcessObject::Pointer m_Process
CommandType::Pointer m_ProgressFilterCommand
unsigned long m_ProgressTag
bool m_Quiet
CommandType::Pointer m_StartFilterCommand
unsigned long m_StartTag
int m_Steps
bool m_TestAbort
TimeProbe m_TimeProbe

Detailed Description

Simple mechanism for monitoring the pipeline events of a filter and reporting these events to std::cout.

SimpleFilterWatcher provides a simple mechanism for monitoring the execution of filter. SimpleFilterWatcher is a stack-based object which takes a pointer to a ProcessObject at constructor time. SimpleFilterWatcher creates a series of commands that are registered as observers to the specified ProcessObject. The events monitored are:

StartEvent EndEvent ProgressEvent IterationEvent AbortEvent

The callbacks routines registered for these events emit a simple message to std::cout.

Example of use:

typedef itk::BinaryThresholdImageFilter<ImageType> FilterType; FilterType::Pointer thresholdFilter = FilterType::New();

SimpleFilterWatcher watcher(thresholdFilter, "Threshold");

The second argument to the constructor to SimpleFilterWatcher is an optional string that is prepended to the event messages. This allows the user to associate the emitted messages to a particular filter/variable.

Todo:
Allow any stream object to be used for the output (not just std::cout)
Wiki Examples:

Definition at line 67 of file itkSimpleFilterWatcher.h.


Member Typedef Documentation

Definition at line 237 of file itkSimpleFilterWatcher.h.


Constructor & Destructor Documentation

itk::SimpleFilterWatcher::SimpleFilterWatcher ( itk::ProcessObject o,
const char *  comment = "" 
)

Constructor. Takes a ProcessObject to monitor and an optional comment string that is prepended to each event message.

Copy constructor

Default constructor. Only provided so that you can have std::vectors of SimpleFilterWatchers.

Destructor.


Member Function Documentation

virtual void itk::SimpleFilterWatcher::EndFilter ( ) [inline, protected, virtual]

Callback method to show the EndEvent

Reimplemented in itk::XMLFilterWatcher.

Definition at line 199 of file itkSimpleFilterWatcher.h.

std::string itk::SimpleFilterWatcher::GetComment ( ) [inline]

Get the comment for the watcher.

Definition at line 129 of file itkSimpleFilterWatcher.h.

Referenced by itk::XMLFilterWatcher::StartFilter().

Set/Get the number of iterations completed.

Definition at line 119 of file itkSimpleFilterWatcher.h.

const char* itk::SimpleFilterWatcher::GetNameOfClass ( ) [inline]

Method to get the name of the class be monitored by this SimpleFilterWatcher

Definition at line 89 of file itkSimpleFilterWatcher.h.

Methods to access member data Get a pointer to the process object being watched.

Definition at line 110 of file itkSimpleFilterWatcher.h.

Referenced by itk::XMLFilterWatcher::EndFilter(), itk::XMLFilterWatcher::ShowProgress(), and itk::XMLFilterWatcher::StartFilter().

Set/Get the quiet mode boolean. If true, verbose progress is reported.

Definition at line 125 of file itkSimpleFilterWatcher.h.

Referenced by itk::XMLFilterWatcher::EndFilter(), itk::XMLFilterWatcher::ShowProgress(), and itk::XMLFilterWatcher::StartFilter().

Set/Get the steps completed.

Definition at line 114 of file itkSimpleFilterWatcher.h.

Referenced by itk::XMLFilterWatcher::ShowProgress().

Get a reference to the TimeProbe

Definition at line 132 of file itkSimpleFilterWatcher.h.

Referenced by itk::XMLFilterWatcher::EndFilter(), and itk::XMLFilterWatcher::StartFilter().

void itk::SimpleFilterWatcher::operator= ( const SimpleFilterWatcher )

operator=

Methods to control the verbosity of the messages. Quiet reporting limits the information emitted at a ProgressEvent.

Definition at line 97 of file itkSimpleFilterWatcher.h.

Methods to control the verbosity of the messages. Quiet reporting limits the information emitted at a ProgressEvent.

Definition at line 96 of file itkSimpleFilterWatcher.h.

void itk::SimpleFilterWatcher::SetIterations ( int  val) [inline]

Set/Get the number of iterations completed.

Definition at line 118 of file itkSimpleFilterWatcher.h.

Referenced by itk::XMLFilterWatcher::StartFilter().

void itk::SimpleFilterWatcher::SetQuiet ( bool  val) [inline]

Set/Get the quiet mode boolean. If true, verbose progress is reported.

Definition at line 124 of file itkSimpleFilterWatcher.h.

void itk::SimpleFilterWatcher::SetSteps ( int  val) [inline]

Set/Get the steps completed.

Definition at line 113 of file itkSimpleFilterWatcher.h.

Referenced by itk::XMLFilterWatcher::ShowProgress(), and itk::XMLFilterWatcher::StartFilter().

virtual void itk::SimpleFilterWatcher::ShowAbort ( ) [inline, protected, virtual]

Callback method to show the AbortEvent

Definition at line 161 of file itkSimpleFilterWatcher.h.

virtual void itk::SimpleFilterWatcher::ShowIteration ( ) [inline, protected, virtual]

Callback method to show the IterationEvent

Definition at line 167 of file itkSimpleFilterWatcher.h.

virtual void itk::SimpleFilterWatcher::ShowProgress ( ) [inline, protected, virtual]

Callback method to show the ProgressEvent

Reimplemented in itk::XMLFilterWatcher.

Definition at line 136 of file itkSimpleFilterWatcher.h.

virtual void itk::SimpleFilterWatcher::StartFilter ( ) [inline, protected, virtual]

Callback method to show the StartEvent

Reimplemented in itk::XMLFilterWatcher.

Definition at line 174 of file itkSimpleFilterWatcher.h.

References itk::ResourceProbe< ValueType, MeanType >::Start().

Methods to use to test the AbortEvent of the a filter. If TestAbort is on, the filter being watched will be aborted when the progress reaches 30%.

Definition at line 104 of file itkSimpleFilterWatcher.h.

Methods to use to test the AbortEvent of the a filter. If TestAbort is on, the filter being watched will be aborted when the progress reaches 30%.

Definition at line 103 of file itkSimpleFilterWatcher.h.


Member Data Documentation

Definition at line 242 of file itkSimpleFilterWatcher.h.

unsigned long itk::SimpleFilterWatcher::m_AbortTag [private]

Definition at line 248 of file itkSimpleFilterWatcher.h.

std::string itk::SimpleFilterWatcher::m_Comment [private]

Definition at line 234 of file itkSimpleFilterWatcher.h.

Definition at line 239 of file itkSimpleFilterWatcher.h.

unsigned long itk::SimpleFilterWatcher::m_EndTag [private]

Definition at line 245 of file itkSimpleFilterWatcher.h.

Definition at line 241 of file itkSimpleFilterWatcher.h.

Definition at line 231 of file itkSimpleFilterWatcher.h.

Definition at line 247 of file itkSimpleFilterWatcher.h.

Definition at line 235 of file itkSimpleFilterWatcher.h.

Definition at line 240 of file itkSimpleFilterWatcher.h.

unsigned long itk::SimpleFilterWatcher::m_ProgressTag [private]

Definition at line 246 of file itkSimpleFilterWatcher.h.

Definition at line 232 of file itkSimpleFilterWatcher.h.

Definition at line 238 of file itkSimpleFilterWatcher.h.

unsigned long itk::SimpleFilterWatcher::m_StartTag [private]

Definition at line 244 of file itkSimpleFilterWatcher.h.

Definition at line 230 of file itkSimpleFilterWatcher.h.

Definition at line 233 of file itkSimpleFilterWatcher.h.

Definition at line 229 of file itkSimpleFilterWatcher.h.


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