[Insight-developers] ITK Modular: Slicer4 updates
Bill Lorensen
bill.lorensen at gmail.com
Mon Apr 4 15:14:15 EDT 2011
Folks,
I have just completed modifications to Slicer4 for the ITK Modular
upgrade. The transition was smooth, only took a few hours. Partly
because of changes I made in January to use ${ITK_LIBRARIES}
throughout Slicer4.
NOTE: none of these changes have a migration document.
Here is a summary of the changes:
1)
Applications/CLI/MRIBiasFieldCorrection/itkN3MRIBiasFieldCorrectionImageFilter.txx
ENH: ITKv4 include file regressions.
Although #include "vxl/vcl/vcl_complex.h" worked it was never intended to
be used.
According to Brad King,
"AFAIK we never intended that style of inclusion. Just plain
#include "vcl_complex.h"
should have always worked if one included ${ITK_USE_FILE} in CMake code
as documented.
We can't possibly anticipate every possible way that a header used to
be include-able just because of the way the directory structure happened
to be arranged. One could have done
#include "../Common/itkMacro.h"
before and it would have worked. Now it won't."
2) Applications/CLI
ENH: Need local copy of itkTestMain.h after modularization
After the ITKv4 modularization change over, itkTestMain.h is no longer
used in ITK. A new testing mechanism is introduced in ITKv4. To
expedite the transition of Slicer4 to modular ITK, we copy the old
itkTestMain.h into the CLI directory. Eventually, it may be
appropriate to use the new ITKv4 test framework.
3) Libs/vtkITK/vtkITKArchetypeImageSeriesReader.cxx
ENH: ITKV4 API change.
ITKv4 removed the method ImageIOFactory::RegisterBuiltInFactories. Its
functionality is handled elsewhere.
4) Libs/vtkITK/itkGrowCutSegmentationImageFilter.txx
ENH: ITKv4 API changes.
The method: GetSize() has been changed to GetNumberOfPixels().
5) Modules/EMSegment/Algorithm/CMakeLists.txt
ENH: Use ${ITK_LIBRARIES} for ITK release portablity.
ITK apps should always use ${ITK_LIBRARIES} rather than specific
library names such as ITKAlgorithms. This has always been the
preferred method. Now, with ITKv4, it is a necessity.
6) Libs/vtkITK/vtkITKArchetypeImageSeriesReader.cxx
ENH: ITKv4 API change
itkAnalyeImageIO is deprecated in ITKv4. It is no longer, by default,
registered. An explicit call ObjectFactoryBase::RegisterFactory(
itk::AnalyzeImageIOFactory::New() ) is needed.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/mailman/private/insight-developers/attachments/20110404/49131885/attachment.htm>
More information about the Insight-developers
mailing list