[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