Orfeo Toolbox  4.2
Public Member Functions | Protected Member Functions | Private Types | Private Attributes | List of all members
itk::SimpleFilterWatcher Class Reference

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

#include <itkSimpleFilterWatcher.h>

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

Public Member Functions

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

Protected Member Functions

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

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)

{Utilities/SimpleFilterWatcher,Monitor a filter}

Definition at line 67 of file itkSimpleFilterWatcher.h.

Member Typedef Documentation

Definition at line 229 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.

Definition at line 33 of file itkSimpleFilterWatcher.cxx.

References EndFilter(), ShowAbort(), ShowIteration(), ShowProgress(), and StartFilter().

itk::SimpleFilterWatcher::SimpleFilterWatcher ( const SimpleFilterWatcher watch)
itk::SimpleFilterWatcher::SimpleFilterWatcher ( )

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

Definition at line 78 of file itkSimpleFilterWatcher.cxx.

itk::SimpleFilterWatcher::~SimpleFilterWatcher ( )
virtual

Destructor.

Definition at line 253 of file itkSimpleFilterWatcher.cxx.

Member Function Documentation

virtual void itk::SimpleFilterWatcher::EndFilter ( )
inlineprotectedvirtual

Callback method to show the EndEvent

Reimplemented in itk::XMLFilterWatcher.

Definition at line 192 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

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

Get the comment for the watcher.

Definition at line 123 of file itkSimpleFilterWatcher.h.

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

int itk::SimpleFilterWatcher::GetIterations ( )
inline

Definition at line 115 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.

ProcessObject* itk::SimpleFilterWatcher::GetProcess ( )
inline

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

Definition at line 107 of file itkSimpleFilterWatcher.h.

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

bool itk::SimpleFilterWatcher::GetQuiet ( )
inline
int itk::SimpleFilterWatcher::GetSteps ( )
inline

Definition at line 111 of file itkSimpleFilterWatcher.h.

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

TimeProbe& itk::SimpleFilterWatcher::GetTimeProbe ( )
inline

Get a reference to the TimeProbe

Definition at line 126 of file itkSimpleFilterWatcher.h.

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

SimpleFilterWatcher & itk::SimpleFilterWatcher::operator= ( const SimpleFilterWatcher watch)
void itk::SimpleFilterWatcher::QuietOff ( )
inline

Definition at line 97 of file itkSimpleFilterWatcher.h.

void itk::SimpleFilterWatcher::QuietOn ( )
inline

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 114 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 119 of file itkSimpleFilterWatcher.h.

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

Set/Get the steps completed.

Definition at line 110 of file itkSimpleFilterWatcher.h.

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

virtual void itk::SimpleFilterWatcher::ShowAbort ( )
inlineprotectedvirtual

Callback method to show the AbortEvent

Definition at line 155 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

virtual void itk::SimpleFilterWatcher::ShowIteration ( )
inlineprotectedvirtual

Callback method to show the IterationEvent

Definition at line 161 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

virtual void itk::SimpleFilterWatcher::ShowProgress ( )
inlineprotectedvirtual

Callback method to show the ProgressEvent

Reimplemented in itk::XMLFilterWatcher.

Definition at line 131 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

virtual void itk::SimpleFilterWatcher::StartFilter ( )
inlineprotectedvirtual

Callback method to show the StartEvent

Reimplemented in itk::XMLFilterWatcher.

Definition at line 168 of file itkSimpleFilterWatcher.h.

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

Referenced by operator=(), and SimpleFilterWatcher().

void itk::SimpleFilterWatcher::TestAbortOff ( )
inline

Definition at line 103 of file itkSimpleFilterWatcher.h.

void itk::SimpleFilterWatcher::TestAbortOn ( )
inline

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 102 of file itkSimpleFilterWatcher.h.

Member Data Documentation

CommandType::Pointer itk::SimpleFilterWatcher::m_AbortFilterCommand
private

Definition at line 234 of file itkSimpleFilterWatcher.h.

unsigned long itk::SimpleFilterWatcher::m_AbortTag
private

Definition at line 240 of file itkSimpleFilterWatcher.h.

std::string itk::SimpleFilterWatcher::m_Comment
private

Definition at line 226 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

CommandType::Pointer itk::SimpleFilterWatcher::m_EndFilterCommand
private

Definition at line 231 of file itkSimpleFilterWatcher.h.

unsigned long itk::SimpleFilterWatcher::m_EndTag
private

Definition at line 237 of file itkSimpleFilterWatcher.h.

CommandType::Pointer itk::SimpleFilterWatcher::m_IterationFilterCommand
private

Definition at line 233 of file itkSimpleFilterWatcher.h.

int itk::SimpleFilterWatcher::m_Iterations
private

Definition at line 223 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

unsigned long itk::SimpleFilterWatcher::m_IterationTag
private

Definition at line 239 of file itkSimpleFilterWatcher.h.

itk::ProcessObject::Pointer itk::SimpleFilterWatcher::m_Process
private

Definition at line 227 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

CommandType::Pointer itk::SimpleFilterWatcher::m_ProgressFilterCommand
private

Definition at line 232 of file itkSimpleFilterWatcher.h.

unsigned long itk::SimpleFilterWatcher::m_ProgressTag
private

Definition at line 238 of file itkSimpleFilterWatcher.h.

bool itk::SimpleFilterWatcher::m_Quiet
private

Definition at line 224 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

CommandType::Pointer itk::SimpleFilterWatcher::m_StartFilterCommand
private

Definition at line 230 of file itkSimpleFilterWatcher.h.

unsigned long itk::SimpleFilterWatcher::m_StartTag
private

Definition at line 236 of file itkSimpleFilterWatcher.h.

int itk::SimpleFilterWatcher::m_Steps
private

Definition at line 222 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

bool itk::SimpleFilterWatcher::m_TestAbort
private

Definition at line 225 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().

TimeProbe itk::SimpleFilterWatcher::m_TimeProbe
private

Definition at line 221 of file itkSimpleFilterWatcher.h.

Referenced by operator=(), and SimpleFilterWatcher().


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

Generated at Sat Aug 30 2014 17:57:31 for Orfeo Toolbox with doxygen 1.8.3.1