From 65cd1b0bc92f57e6ba1c504b9eb387b6fe1092ba Mon Sep 17 00:00:00 2001 From: "Hans J. Johnson" Date: Wed, 16 Sep 2026 09:37:57 -0500 Subject: [PATCH] COMP: Use itk::IOComponentEnum and include vnl_svd.h (ITK 6) ITK removes itk::ImageIOBase::IOComponentType when ITK_LEGACY_REMOVE is ON, which ITK forces whenever it is built with wrapping enabled. The namespace-scope itk::IOComponentEnum is present in both ITK 5.4 and ITK 6, so this spelling builds against either. vtkPlusProbeCalibrationOptimizerAlgo used vnl_svd without including it, relying on an ITK header to pull it in transitively; ITK 6 no longer does. Include it directly. --- .../vtkPlusProbeCalibrationOptimizerAlgo.cxx | 2 ++ src/PlusCommon/PlusCommon.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/PlusCalibration/vtkProbeCalibrationAlgo/vtkPlusProbeCalibrationOptimizerAlgo.cxx b/src/PlusCalibration/vtkProbeCalibrationAlgo/vtkPlusProbeCalibrationOptimizerAlgo.cxx index 42d9e5ad5..5082d6284 100644 --- a/src/PlusCalibration/vtkProbeCalibrationAlgo/vtkPlusProbeCalibrationOptimizerAlgo.cxx +++ b/src/PlusCalibration/vtkProbeCalibrationAlgo/vtkPlusProbeCalibrationOptimizerAlgo.cxx @@ -18,6 +18,8 @@ See License.txt for details. #include "vtksys/SystemTools.hxx" +#include + #include "itkPowellOptimizer.h" #include "itkScaleVersor3DTransform.h" #include "itkSimilarity3DTransform.h" diff --git a/src/PlusCommon/PlusCommon.h b/src/PlusCommon/PlusCommon.h index 7c6580576..7321f462f 100644 --- a/src/PlusCommon/PlusCommon.h +++ b/src/PlusCommon/PlusCommon.h @@ -51,7 +51,7 @@ class vtkXMLDataElement; namespace PlusCommon { - typedef itk::ImageIOBase::IOComponentType ITKScalarPixelType; + typedef itk::IOComponentEnum ITKScalarPixelType; typedef int VTKScalarPixelType; typedef int IGTLScalarPixelType;