ITK
6.0.0
Insight Toolkit
|
#include <itkSimpleFilterWatcher.h>
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:
using FilterType = itk::BinaryThresholdImageFilter<ImageType>; auto 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.
Definition at line 68 of file itkSimpleFilterWatcher.h.
Public Member Functions | |
std::string | GetComment () |
const char * | GetNameOfClass () |
ProcessObject * | GetProcess () |
TimeProbe & | GetTimeProbe () |
SimpleFilterWatcher & | operator= (const SimpleFilterWatcher &) |
SimpleFilterWatcher () | |
SimpleFilterWatcher (const SimpleFilterWatcher &) | |
SimpleFilterWatcher (itk::ProcessObject *o, const char *comment="") | |
virtual | ~SimpleFilterWatcher () |
void | QuietOn () |
void | QuietOff () |
void | TestAbortOn () |
void | TestAbortOff () |
void | SetSteps (int val) |
int | GetSteps () const |
void | SetIterations (int val) |
int | GetIterations () const |
void | SetQuiet (bool val) |
bool | GetQuiet () const |
Protected Member Functions | |
void | CreateCommands () |
void | DeepCopy (const SimpleFilterWatcher &watch) |
void | RemoveObservers () |
virtual void | ShowAbort () |
virtual void | ShowIteration () |
virtual void | ShowProgress () |
virtual void | StartFilter () |
virtual void | EndFilter () |
Private Types | |
using | CommandType = SimpleMemberCommand< SimpleFilterWatcher > |
Private Attributes | |
CommandType::Pointer | m_AbortFilterCommand {} |
unsigned long | m_AbortTag { 0 } |
std::string | m_Comment {} |
CommandType::Pointer | m_EndFilterCommand {} |
unsigned long | m_EndTag { 0 } |
CommandType::Pointer | m_IterationFilterCommand {} |
int | m_Iterations { 0 } |
unsigned long | m_IterationTag { 0 } |
itk::ProcessObject::Pointer | m_Process {} |
CommandType::Pointer | m_ProgressFilterCommand {} |
std::mutex | m_ProgressOutput {} |
unsigned long | m_ProgressTag { 0 } |
bool | m_Quiet { false } |
CommandType::Pointer | m_StartFilterCommand {} |
unsigned long | m_StartTag { 0 } |
int | m_Steps { 0 } |
bool | m_TestAbort { false } |
TimeProbe | m_TimeProbe {} |
|
private |
Definition at line 306 of file itkSimpleFilterWatcher.h.
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.
itk::SimpleFilterWatcher::SimpleFilterWatcher | ( | const SimpleFilterWatcher & | ) |
Copy constructor
itk::SimpleFilterWatcher::SimpleFilterWatcher | ( | ) |
Default constructor. Only provided so that you can have std::vectors of SimpleFilterWatchers.
|
virtual |
Destructor.
|
protected |
Create commands for different event types.
|
protected |
The common code for copying this class.
|
inlineprotectedvirtual |
Callback method to show the EndEvent
Reimplemented in itk::XMLFilterWatcher.
Definition at line 270 of file itkSimpleFilterWatcher.h.
|
inline |
Get the comment for the watcher.
Definition at line 177 of file itkSimpleFilterWatcher.h.
|
inline |
Set/Get the number of iterations completed.
Definition at line 155 of file itkSimpleFilterWatcher.h.
|
inline |
Method to get the name of the class be monitored by this SimpleFilterWatcher
Definition at line 92 of file itkSimpleFilterWatcher.h.
|
inline |
Methods to access member data Get a pointer to the process object being watched.
Definition at line 130 of file itkSimpleFilterWatcher.h.
|
inline |
Set/Get the quiet mode boolean. If true, verbose progress is reported.
Definition at line 169 of file itkSimpleFilterWatcher.h.
|
inline |
Set/Get the steps completed.
Definition at line 142 of file itkSimpleFilterWatcher.h.
|
inline |
Get a reference to the TimeProbe
Definition at line 184 of file itkSimpleFilterWatcher.h.
SimpleFilterWatcher& itk::SimpleFilterWatcher::operator= | ( | const SimpleFilterWatcher & | ) |
operator=
|
inline |
Methods to control the verbosity of the messages. Quiet reporting limits the information emitted at a ProgressEvent.
Definition at line 105 of file itkSimpleFilterWatcher.h.
|
inline |
Methods to control the verbosity of the messages. Quiet reporting limits the information emitted at a ProgressEvent.
Definition at line 100 of file itkSimpleFilterWatcher.h.
|
protected |
Remove observers we have on the process object.
|
inline |
Set/Get the number of iterations completed.
Definition at line 150 of file itkSimpleFilterWatcher.h.
|
inline |
Set/Get the quiet mode boolean. If true, verbose progress is reported.
Definition at line 164 of file itkSimpleFilterWatcher.h.
|
inline |
Set/Get the steps completed.
Definition at line 137 of file itkSimpleFilterWatcher.h.
|
inlineprotectedvirtual |
Callback method to show the AbortEvent
Definition at line 231 of file itkSimpleFilterWatcher.h.
|
inlineprotectedvirtual |
Callback method to show the IterationEvent
Definition at line 238 of file itkSimpleFilterWatcher.h.
|
inlineprotectedvirtual |
Callback method to show the ProgressEvent
Reimplemented in itk::XMLFilterWatcher.
Definition at line 192 of file itkSimpleFilterWatcher.h.
|
inlineprotectedvirtual |
Callback method to show the StartEvent
Reimplemented in itk::XMLFilterWatcher.
Definition at line 246 of file itkSimpleFilterWatcher.h.
|
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 120 of file itkSimpleFilterWatcher.h.
|
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 115 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 311 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 317 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 302 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 308 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 314 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 310 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 299 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 316 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 303 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 309 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 304 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 315 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 300 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 307 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 313 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 298 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 301 of file itkSimpleFilterWatcher.h.
|
private |
Definition at line 297 of file itkSimpleFilterWatcher.h.