<div dir="ltr"><div><div>My main concern is that old code generates a compiler error that gives no clue as to what is wrong.<br></div>What info can we provide to the customer to help fix this error. I see nothing in the migration guide. In fact, that guide has not been updated since last November.<br>
<br></div>Even a warning would be useful with explicit instructions on what to change. My case was simple for me to fix because I knew something had changed in the transforms and the code base was small. Pity thepoor customer with a large investment in using ITK code.<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jul 26, 2013 at 2:16 PM, Matt McCormick <span dir="ltr">&lt;<a href="mailto:matt.mccormick@kitware.com" target="_blank">matt.mccormick@kitware.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Ali,<br>
<br>
If a float transform was saved as a double on disk, that could be<br>
considered a bug and I do not think there is harm in fixing the<br>
behavior.  We still should fix the compliation IMHO.<br>
<br>
Thanks,<br>
Matt<br>
<div class="HOEnZb"><div class="h5"><br>
On Fri, Jul 26, 2013 at 1:37 PM, Ghayoor, Ali &lt;<a href="mailto:ali-ghayoor@uiowa.edu">ali-ghayoor@uiowa.edu</a>&gt; wrote:<br>
&gt; Hello All,<br>
&gt;<br>
&gt; As Bill Lorensen has proven in his example, the new changes to ITK, due to<br>
&gt; the &quot;ENH: Support single precision registration&quot; patch, break API of<br>
&gt; &quot;itkTransformFileReader/Writer&quot; filters.<br>
&gt;<br>
&gt; In attached report file, I have explained about the importance of new<br>
&gt; changes, and the current backward compatibility issues that they cause.<br>
&gt; Also, it is shown that the old functionality had a bug in it, and moving<br>
&gt; forward this bug should not be re-introduced.<br>
&gt;<br>
&gt; I really appreciate if you ITK gurus take a look at this report and tell<br>
&gt; your ideas about the new changes.<br>
&gt;<br>
&gt; Thank you,<br>
&gt; Ali<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; From: Bill Lorensen &lt;<a href="mailto:bill.lorensen@gmail.com">bill.lorensen@gmail.com</a>&gt;<br>
&gt; Date: Sunday, July 14, 2013 10:31 AM<br>
&gt; To: ITK &lt;<a href="mailto:insight-developers@itk.org">insight-developers@itk.org</a>&gt;<br>
&gt; Subject: [Insight-developers] Recent changes to Transforms break ITK&#39;s API<br>
&gt;<br>
&gt; Folks,<br>
&gt;<br>
&gt; When I compile the following code I get this compilation error:<br>
&gt;<br>
&gt; /home/lorensen/ProjectsGIT/ITKGerrit/Modules/Remote/WikiExamples/IO/TransformFileWriter.cxx:<br>
&gt; In function ‘int main(int, char**)’:<br>
&gt; /home/lorensen/ProjectsGIT/ITKGerrit/Modules/Remote/WikiExamples/IO/TransformFileWriter.cxx:20:<br>
&gt; error: no matching function for call to<br>
&gt; ‘itk::TransformFileWriterTemplate&lt;double&gt;::SetInput(itk::SmartPointer&lt;itk::Rigid2DTransform&lt;float&gt;<br>
&gt;&gt;&amp;)’<br>
&gt; /home/lorensen/ProjectsGIT/ITKGerrit/Modules/IO/TransformBase/include/itkTransformFileWriter.hxx:78:<br>
&gt; note: candidates are: void<br>
&gt; itk::TransformFileWriterTemplate&lt;ScalarType&gt;::SetInput(const<br>
&gt; itk::TransformBaseTemplate&lt;TScalarType&gt;*) [with ScalarType = double]<br>
&gt;<br>
&gt; ---------------------------------------------------------------------------------------------------<br>
&gt; #include &quot;itkRigid2DTransform.h&quot;<br>
&gt; #include &quot;itkTransformFileWriter.h&quot;<br>
&gt;<br>
&gt; int main(int argc, char *argv[])<br>
&gt; {<br>
&gt;   std::string fileName;<br>
&gt;   if(argc == 1) // No arguments were provided<br>
&gt;   {<br>
&gt;     fileName = &quot;test.tfm&quot;;<br>
&gt;   }<br>
&gt;   else<br>
&gt;   {<br>
&gt;     fileName = argv[1];<br>
&gt;   }<br>
&gt;<br>
&gt;   typedef itk::Rigid2DTransform&lt; float &gt; TransformType;<br>
&gt;   TransformType::Pointer transform = TransformType::New();<br>
&gt;<br>
&gt;   itk::TransformFileWriter::Pointer writer =<br>
&gt; itk::TransformFileWriter::New();<br>
&gt;   writer-&gt;SetInput(transform);<br>
&gt;   writer-&gt;SetFileName(fileName);<br>
&gt;   writer-&gt;Update();<br>
&gt;<br>
&gt;   return EXIT_SUCCESS;<br>
&gt; }<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; ________________________________<br>
&gt; Notice: This UI Health Care e-mail (including attachments) is covered by the<br>
&gt; Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential<br>
&gt; and may be legally privileged.  If you are not the intended recipient, you<br>
&gt; are hereby notified that any retention, dissemination, distribution, or<br>
&gt; copying of this communication is strictly prohibited.  Please reply to the<br>
&gt; sender that you have received the message in error, then delete it.  Thank<br>
&gt; you.<br>
&gt; ________________________________<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Unpaid intern in BillsBasement at noware dot com<br>
</div>