Documentation/Nightly/Developers/Tutorials/MigrationGuide/ITK4-to-ITK5

From Slicer Wiki
Revision as of 00:50, 6 March 2019 by Phcerdan (talk | contribs) (Created page with "==Transition from ITK4 to ITK5== This section lists categories of code changes necessary to build Slicer with ITK 5. Each category has a short description, an example error me...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Home < Documentation < Nightly < Developers < Tutorials < MigrationGuide < ITK4-to-ITK5

Transition from ITK4 to ITK5

This section lists categories of code changes necessary to build Slicer with ITK 5. Each category has a short description, an example error message, a suggested upgrade path, and references to relevant commits.

Referencing this list might be helpful if Slicer extensions require updates to be compatible with ITK 5.

Also check the ITK migration guide if more info is needed:

* https://github.com/InsightSoftwareConsortium/ITK/blob/master/Documentation/ITK5MigrationGuide.md (ITKv5 Migration Guide)

itkMultiThreader refactor

Replace lines like:

 #include <itkMultiThreader.h>
 itk::MultiThreader::Pointer ProcessingThreader;

with:

 #include <itkPlatformMultiThreader.h>
 itk::PlatformMultiThreader::Pointer ProcessingThreader;

SimpleFastMutexLock, FastMutexLock and MutexLock are deprecated

Instead use std::mutex available in C++11

Replace:

 #include "itkSimpleFastMutexLock.h"
 #include "itkFastMutexLock.h"
 #include "itkMutexLock.h"
 SimpleFastMutexLock
 FastMutexLock
 MutexLock

with:

 #include <mutex>
 std::mutex