Skip to content

Update ITK from v4.13 to v5.0rc1, BRAINSTools and SimpleITK [ci skip]

Sam Horvath requested to merge add-itkv5-support-and-remove-itkv4-support into master

Created by: jcfr

To help extension developers transition their code base, a migration guide is also available on the wiki. See https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/MigrationGuide/ITK4-to-ITK5

This commit implements the following changes

  • Compatibility with refactor of threading models in ITK: Fix compilation using ProcessingThreader class instead of PlatformMultiThreader. ITKv5 reorganized the multi-threading capabilities of ITK into a more modular organization and naming to support several modern parallelism paradigms.

    Note that these changes allow Slicer to compile with ITKv5, but does not take advantage of any enhancement supporting new threading models. ProcessingThreader is still the old-renamed PlatformMultiThreader.

    These changes were originally associated with PR https://github.com/Slicer/Slicer/pull/1057

  • Fix compilation issue related to ComputeJacobianWithRespectToPosition parameter mismatch.

    ITKv5 change the argument of some transform functions from JacobianType to JacobianPositionType. This fixes the new signatures.

    These changes were originally associated with PR https://github.com/Slicer/Slicer/pull/1055

List of BRAINSTools changes:

$ git shortlog --no-merges b045970..ac4dafaa

[...]

List of SimpleITK changes:

$ git shortlog --no-merges v1.1.0..dc5c1a1d

[...]

List of ITK changes:

Co-authored-by: Pablo Hernandez-Cerdan pablo.hernandez.cerdan@outlook.com Co-authored-by: Hans Johnson hans.j.johnson@gmail.com Co-authored-by: Sam Horvath sam.horvath@kitware.com Co-authored-by: Jean-Christophe Fillion-Robin jcfr@kitware.com

Merge request reports