<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"><<a href="mailto:matt.mccormick@kitware.com" target="_blank">matt.mccormick@kitware.com</a>></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 <<a href="mailto:ali-ghayoor@uiowa.edu">ali-ghayoor@uiowa.edu</a>> wrote:<br>
> Hello All,<br>
><br>
> As Bill Lorensen has proven in his example, the new changes to ITK, due to<br>
> the "ENH: Support single precision registration" patch, break API of<br>
> "itkTransformFileReader/Writer" filters.<br>
><br>
> In attached report file, I have explained about the importance of new<br>
> changes, and the current backward compatibility issues that they cause.<br>
> Also, it is shown that the old functionality had a bug in it, and moving<br>
> forward this bug should not be re-introduced.<br>
><br>
> I really appreciate if you ITK gurus take a look at this report and tell<br>
> your ideas about the new changes.<br>
><br>
> Thank you,<br>
> Ali<br>
><br>
><br>
><br>
> From: Bill Lorensen <<a href="mailto:bill.lorensen@gmail.com">bill.lorensen@gmail.com</a>><br>
> Date: Sunday, July 14, 2013 10:31 AM<br>
> To: ITK <<a href="mailto:insight-developers@itk.org">insight-developers@itk.org</a>><br>
> Subject: [Insight-developers] Recent changes to Transforms break ITK's API<br>
><br>
> Folks,<br>
><br>
> When I compile the following code I get this compilation error:<br>
><br>
> /home/lorensen/ProjectsGIT/ITKGerrit/Modules/Remote/WikiExamples/IO/TransformFileWriter.cxx:<br>
> In function ‘int main(int, char**)’:<br>
> /home/lorensen/ProjectsGIT/ITKGerrit/Modules/Remote/WikiExamples/IO/TransformFileWriter.cxx:20:<br>
> error: no matching function for call to<br>
> ‘itk::TransformFileWriterTemplate<double>::SetInput(itk::SmartPointer<itk::Rigid2DTransform<float><br>
>>&)’<br>
> /home/lorensen/ProjectsGIT/ITKGerrit/Modules/IO/TransformBase/include/itkTransformFileWriter.hxx:78:<br>
> note: candidates are: void<br>
> itk::TransformFileWriterTemplate<ScalarType>::SetInput(const<br>
> itk::TransformBaseTemplate<TScalarType>*) [with ScalarType = double]<br>
><br>
> ---------------------------------------------------------------------------------------------------<br>
> #include "itkRigid2DTransform.h"<br>
> #include "itkTransformFileWriter.h"<br>
><br>
> int main(int argc, char *argv[])<br>
> {<br>
> std::string fileName;<br>
> if(argc == 1) // No arguments were provided<br>
> {<br>
> fileName = "test.tfm";<br>
> }<br>
> else<br>
> {<br>
> fileName = argv[1];<br>
> }<br>
><br>
> typedef itk::Rigid2DTransform< float > TransformType;<br>
> TransformType::Pointer transform = TransformType::New();<br>
><br>
> itk::TransformFileWriter::Pointer writer =<br>
> itk::TransformFileWriter::New();<br>
> writer->SetInput(transform);<br>
> writer->SetFileName(fileName);<br>
> writer->Update();<br>
><br>
> return EXIT_SUCCESS;<br>
> }<br>
><br>
><br>
><br>
> ________________________________<br>
> Notice: This UI Health Care e-mail (including attachments) is covered by the<br>
> Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential<br>
> and may be legally privileged. If you are not the intended recipient, you<br>
> are hereby notified that any retention, dissemination, distribution, or<br>
> copying of this communication is strictly prohibited. Please reply to the<br>
> sender that you have received the message in error, then delete it. Thank<br>
> you.<br>
> ________________________________<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Unpaid intern in BillsBasement at noware dot com<br>
</div>