<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="cid:filelist.xml@01C0C3F9.EF53BF50">
<!--[if gte mso 9]><xml>
 <o:OfficeDocumentSettings>
  <o:DoNotRelyOnCSS/>
 </o:OfficeDocumentSettings>
</xml><![endif]--><!--[if gte mso 9]><xml>
 <w:WordDocument>
  <w:View>Normal</w:View>
  <w:Zoom>0</w:Zoom>
  <w:DocumentKind>DocumentEmail</w:DocumentKind>
  <w:EnvelopeVis/>
 </w:WordDocument>
</xml><![endif]-->
<style>
<!--
 /* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {mso-style-parent:"";
        margin:0in;
        margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        font-size:12.0pt;
        font-family:"Times New Roman";
        mso-fareast-font-family:"Times New Roman";}
p.MsoAutoSig, li.MsoAutoSig, div.MsoAutoSig
        {margin:0in;
        margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        font-size:12.0pt;
        font-family:"Times New Roman";
        mso-fareast-font-family:"Times New Roman";}
span.EmailStyle15
        {mso-style-type:personal-compose;
        mso-ansi-font-size:10.0pt;
        mso-ascii-font-family:Arial;
        mso-hansi-font-family:Arial;
        mso-bidi-font-family:Arial;
        color:black;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;
        mso-header-margin:.5in;
        mso-footer-margin:.5in;
        mso-paper-source:0;}
div.Section1
        {page:Section1;}
 /* List Definitions */
@list l0
        {mso-list-id:86968317;
        mso-list-type:hybrid;
        mso-list-template-ids:509107646 -613654904 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
        {mso-level-tab-stop:57.0pt;
        mso-level-number-position:left;
        margin-left:57.0pt;
        text-indent:-39.0pt;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
-->
</style>
</head>

<body lang=EN-US style='tab-interval:.5in'>

<div class=Section1>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>Hello Folk,<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>I have made some recent changes to VTK’s UpdateData method. Basically
there were a few problems I was trying to address:<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></span></p>

<p class=MsoNormal style='margin-left:57.0pt;text-indent:-39.0pt;mso-list:l0 level1 lfo1;
tab-stops:list 57.0pt'><![if !supportLists]><span class=EmailStyle15><font
size=2 color=black face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:
12.0pt;font-family:Arial'>1.<font size=1 face="Times New Roman"><span
style='font:7.0pt "Times New Roman"'>                
</span></font></span></font></span><![endif]><span class=EmailStyle15><font
size=2 color=black face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:
12.0pt;font-family:Arial'>for filters with more than one output, only the
output that is currently updating has a valid UpdateExtent. To allocate data in
the Execute method you need to know which output is currently updating so you
can look at its UpdateExtent.<o:p></o:p></span></font></span></p>

<p class=MsoNormal style='margin-left:57.0pt;text-indent:-39.0pt;mso-list:l0 level1 lfo1;
tab-stops:list 57.0pt'><![if !supportLists]><span class=EmailStyle15><font
size=2 color=black face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:
12.0pt;font-family:Arial'>2.<font size=1 face="Times New Roman"><span
style='font:7.0pt "Times New Roman"'>                
</span></font></span></font></span><![endif]><span class=EmailStyle15><font
size=2 color=black face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:
12.0pt;font-family:Arial'>People writing filters were getting confused about
what Execute method to use. There was Execute() Execute(vtkImageData *)
Execute(vtkImageData *, vtkImageData *) Execute(vtkImageData **, vtkImageData)
Execute(vtkImageData **,vtkImageData **) all defined and most of them were
defined in the superclass, causing subclasses to override all of them from
their superclasses. This proved a little ugly and confusing for new filter
writers.<o:p></o:p></span></font></span></p>

<p class=MsoNormal style='margin-left:57.0pt;text-indent:-39.0pt;mso-list:l0 level1 lfo1;
tab-stops:list 57.0pt'><![if !supportLists]><span class=EmailStyle15><font
size=2 color=black face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:
12.0pt;font-family:Arial'>3.<font size=1 face="Times New Roman"><span
style='font:7.0pt "Times New Roman"'>                
</span></font></span></font></span><![endif]><span class=EmailStyle15><font
size=2 color=black face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:
12.0pt;font-family:Arial'>Try to make imaging and graphics more consistent<o:p></o:p></span></font></span></p>

<p class=MsoNormal style='margin-left:.25in'><span class=EmailStyle15><font
size=2 color=black face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:
12.0pt;font-family:Arial'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>So I modified UpdateData(vtkDataObject *) to call a new method
ExecuteData(vtkDataObject *) instead of Execute().<span style="mso-spacerun:
yes">  </span>For backwards compatibility I added a default implementation
of ExecuteData that just calls Execute(). So for graphics filters you can still
use Execute.<span style="mso-spacerun: yes">  </span>For imaging filters I
changed some superclasses so that if you are using ThreadedExecute you are OK.
Otherwise you will need to switch over to ExecuteData. My current plan is to
change all the other filters in VTK to use ExecuteData (just a perl script) but
leave in the default implementation of ExecuteData that calls Execute for now. The
only reason I haven’t done this already is that I’m still not 100% sure I like
that signature. Occasionally I think the signature should be<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>ExecuteData (int numInputs, vtkDataObject **inputs, int numOutputs,
vtkDataObject **outputs, int currentOutput) <o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>That would allow in the future the pipeline control to be completely
removed from the filters. Basically a filter could be though of as a functional
element then. The pipeline control could be encapsulated into a separate object
then. For now I’m not going to change anything else but I was curious if anyone
had any thoughts on the issue.<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=black
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>Ken<o:p></o:p></span></font></span></p>

</div>

</body>

</html>