<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7638.1">
<TITLE>StreamingImageFilter Observer?</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->
<P ALIGN=LEFT><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial">Dear all,</FONT></SPAN></P>
<BR>
<P ALIGN=LEFT><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial">I</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial"> am interested in</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"> <FONT SIZE=2 FACE="Arial">monitoring</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial"> the itkStreamingImageFilter in order to obtain information when the</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"> <FONT SIZE=2 FACE="Arial">pipeline starts</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial"> execution on the different image regions.</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial"></FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"> </SPAN></P>
<P ALIGN=LEFT><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial">Till now I have only managed to monitor the StartEvent</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial">/EndEvent</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial"> of the filter</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial"> as shown</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"> <FONT SIZE=2 FACE="Arial">below</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial">.</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"> </SPAN></P>
<P ALIGN=LEFT><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial">Does anybody</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"> <FONT SIZE=2 FACE="Arial">can give me</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"> <FONT SIZE=2 FACE="Arial">a hint</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial"> what type of command</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"> <FONT SIZE=2 FACE="Arial">observer</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial"> I should use in order to observe the execution of a specific method.</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN></P>
<P ALIGN=LEFT><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial">Any help is appreciated.</FONT></SPAN></P>
<BR>
<BR>
<P ALIGN=LEFT><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial">Thanks in advance,</FONT></SPAN></P>
<P ALIGN=LEFT><SPAN LANG="en-gb"><FONT SIZE=2 FACE="Arial">Aneta</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN></P>
<BR>
<P ALIGN=LEFT><SPAN LANG="en-us"><FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">class</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> CommandIterationUpdate :</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">public</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itk::Command</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> </SPAN></P>
<P ALIGN=LEFT><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New">{</FONT></SPAN></P>
<P ALIGN=LEFT><SPAN LANG="en-us"><FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">public</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New">:</FONT></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">typedef</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> CommandIterationUpdate Self;</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">typedef</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itk::Command Superclass;</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">typedef</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itk::SmartPointer<Self> Pointer;</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itkNewMacro( Self );</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><SPAN LANG="en-us"><FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">protected</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New">:</FONT></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> CommandIterationUpdate() {};</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><SPAN LANG="en-us"><FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">public</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New">:</FONT></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">typedef</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"></FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">short</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"> <FONT SIZE=2 FACE="Courier New">PixelType;</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">typedef</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itk::Image<PixelType, 3> ImageType;</FONT></SPAN></B><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"></SPAN></B></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">typedef</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itk::StreamingImageFilter<ImageType, ImageType> StreamerType;</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">typedef</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"></FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">const</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> StreamerType *StreamerPointer;</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<BR>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">void</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> Execute(itk::Object *caller,</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">const</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itk::EventObject & event)</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> {</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> Execute( (</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"><FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">const</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itk::Object *)caller, event);</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> }</FONT></SPAN></B><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"></SPAN></B></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">void</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> Execute(</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"><FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">const</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itk::Object * object,</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">const</FONT></SPAN><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> itk::EventObject & event)</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> {</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> StreamerPointer streamer =</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">dynamic_cast</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New">< StreamerPointer >( object );</FONT></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">if</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New">( ! itk::StartEvent().CheckEvent( &event ) )</FONT></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> {</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> <FONT COLOR="#0000FF" SIZE=2 FACE="Courier New">return</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New">;</FONT></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> }</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> </FONT></SPAN></B><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"> <FONT SIZE=2 FACE="Courier New">std::cout << "StreamingImageFilter</FONT></SPAN></B><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"> <FONT SIZE=2 FACE="Courier New">Start</FONT></SPAN></B><SPAN LANG="en-gb"><B></B></SPAN><SPAN LANG="en-gb"><B></B></SPAN><B><SPAN LANG="en-us"> <FONT SIZE=2 FACE="Courier New">Event" << std::endl;</FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
<P ALIGN=LEFT><B><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New"> } </FONT></SPAN></B><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"> </SPAN></P>
<P ALIGN=LEFT><SPAN LANG="en-us"><FONT SIZE=2 FACE="Courier New">};</FONT></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-gb"></SPAN><SPAN LANG="en-us"></SPAN></P>
</BODY>
</HTML>