Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: ITK5 Update #1033

Closed
wants to merge 7 commits into from
Closed

WIP: ITK5 Update #1033

wants to merge 7 commits into from

Conversation

sjh26
Copy link

@sjh26 sjh26 commented Oct 25, 2018

Initial work for the ITK5 update. Covers a few of the same nullptr changes from #952

ITK_REMOVE_LEGACY is still OFF for this. Removing the legacy code will require reworking of the threading in the Slicer Application, and updating SimpleITK and BRAINSTools to ITK5

@sjh26 sjh26 requested review from jcfr and dzenanz October 25, 2018 19:29
Copy link
Member

@dzenanz dzenanz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the first plunge @sjh26! Minor comments inline. Also, it would be good to follow the update instructions here.

{
itkExceptionMacro( "Only storage methods are implemented for InverseDisplacementFieldTransform" );
}
virtual void ComputeJacobianWithRespectToPosition(
const typename Superclass::IndexType &,
typename Superclass::JacobianType &) const ITK_OVERRIDE
typename Superclass::JacobianType &) const
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If a method cannot be overridden, it is either not virtual or not defined. Not defined is more likely, possibly having been deprecated in ITKv3 to ITKv4 transition, and removed in v4 to v5 transition. Either way, this method should be removed as it will probably not be invoked. Same goes for a few other method overloads here.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The signature has changed in ITKv5. From JacobianType in v4 to JacobianPositionType in v5.
Working on this in @hjmjohnson branch: Slicer/Slicer#1055

@@ -99,7 +99,7 @@ if(NOT DEFINED ITK_DIR AND NOT Slicer_USE_SYSTEM_${proj})
-DBUILD_TESTING:BOOL=OFF
-DBUILD_EXAMPLES:BOOL=OFF
-DITK_LEGACY_REMOVE:BOOL=OFF
-DITKV4_COMPATIBILITY:BOOL=ON
-DITKV4_COMPATIBILITY:BOOL=OFF
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will become more important soon, with the expected merging of this patch. You could leave it ON, or we could consider turning it ON once we update ITK to beta 2 or 5.0 final.

@dzenanz
Copy link
Member

dzenanz commented Oct 25, 2018

Regarding the test failure:

In file included from /usr/src/Slicer/Base/Logic/vtkSlicerApplicationLogic.cxx:10:0:
/usr/src/Slicer/Base/Logic/vtkSlicerApplicationLogic.h:31:38: fatal error: itkPlatformMultiThreader.h: No such file or directory
compilation terminated.

test infrastructure might need to be updated. @jcfr?

@dzenanz dzenanz self-assigned this Nov 13, 2018
@hjmjohnson
Copy link
Member

hjmjohnson commented Dec 11, 2018

@phcerdan
Copy link

phcerdan commented Mar 6, 2019

See also #1096 where @hjmjohnson PR's have been wrapped together.

@hjmjohnson
Copy link
Member

Closing as the effort is incorporating changes in other PR.

@hjmjohnson hjmjohnson closed this Mar 6, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants