From 839955e9392ebe7eef93e3ac28457689f0bbf3ec Mon Sep 17 00:00:00 2001 From: Niels Dekker Date: Mon, 18 Mar 2024 18:48:46 +0100 Subject: [PATCH 1/3] STYLE: Replace BoundaryConditionPointerType w/ `BoundaryConditionType *` Made it clearer that ConvolutionImageFilterBase and PadImageFilterBase use a _raw_ pointer to the `BoundaryCondition`. --- .../Convolution/include/itkConvolutionImageFilterBase.h | 6 +++--- .../Filtering/ImageGrid/include/itkPadImageFilterBase.h | 8 ++++---- .../Filtering/ImageGrid/include/itkPadImageFilterBase.hxx | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Modules/Filtering/Convolution/include/itkConvolutionImageFilterBase.h b/Modules/Filtering/Convolution/include/itkConvolutionImageFilterBase.h index ae257a19891..61ccf8e5c53 100644 --- a/Modules/Filtering/Convolution/include/itkConvolutionImageFilterBase.h +++ b/Modules/Filtering/Convolution/include/itkConvolutionImageFilterBase.h @@ -93,8 +93,8 @@ class ITK_TEMPLATE_EXPORT ConvolutionImageFilterBase : public ImageToImageFilter using DefaultBoundaryConditionType = ZeroFluxNeumannBoundaryCondition; /** Set/get the boundary condition. */ - itkSetMacro(BoundaryCondition, BoundaryConditionPointerType); - itkGetConstMacro(BoundaryCondition, BoundaryConditionPointerType); + itkSetMacro(BoundaryCondition, BoundaryConditionType *); + itkGetConstMacro(BoundaryCondition, BoundaryConditionType *); /** Set/get the image kernel. */ itkSetInputMacro(KernelImage, KernelImageType); @@ -157,7 +157,7 @@ class ITK_TEMPLATE_EXPORT ConvolutionImageFilterBase : public ImageToImageFilter bool m_Normalize{ false }; DefaultBoundaryConditionType m_DefaultBoundaryCondition{}; - BoundaryConditionPointerType m_BoundaryCondition{}; + BoundaryConditionType * m_BoundaryCondition{}; OutputRegionModeEnum m_OutputRegionMode{ ConvolutionImageFilterBaseEnums::ConvolutionImageFilterOutputRegion::SAME }; }; diff --git a/Modules/Filtering/ImageGrid/include/itkPadImageFilterBase.h b/Modules/Filtering/ImageGrid/include/itkPadImageFilterBase.h index 75b728d081a..967eeda3818 100644 --- a/Modules/Filtering/ImageGrid/include/itkPadImageFilterBase.h +++ b/Modules/Filtering/ImageGrid/include/itkPadImageFilterBase.h @@ -86,8 +86,8 @@ class ITK_TEMPLATE_EXPORT PadImageFilterBase : public ImageToImageFilter::DynamicThreadedGenerateData( template void PadImageFilterBase::InternalSetBoundaryCondition( - const BoundaryConditionPointerType boundaryCondition) + BoundaryConditionType * const boundaryCondition) { m_BoundaryCondition = boundaryCondition; } From bb00c86f38481654508e8b455d56e8619f5998cf Mon Sep 17 00:00:00 2001 From: Niels Dekker Date: Tue, 26 Mar 2024 20:44:46 +0100 Subject: [PATCH 2/3] STYLE: Remove unused `Superclass::BoundaryConditionPointerType` FFTConvolutionImageFilter does not use `BoundaryConditionPointerType`. --- .../Filtering/Convolution/include/itkFFTConvolutionImageFilter.h | 1 - 1 file changed, 1 deletion(-) diff --git a/Modules/Filtering/Convolution/include/itkFFTConvolutionImageFilter.h b/Modules/Filtering/Convolution/include/itkFFTConvolutionImageFilter.h index 3acf247cbdd..55231a32139 100644 --- a/Modules/Filtering/Convolution/include/itkFFTConvolutionImageFilter.h +++ b/Modules/Filtering/Convolution/include/itkFFTConvolutionImageFilter.h @@ -107,7 +107,6 @@ class ITK_TEMPLATE_EXPORT FFTConvolutionImageFilter /** Typedef to describe the boundary condition. */ using typename Superclass::BoundaryConditionType; - using typename Superclass::BoundaryConditionPointerType; itkSetMacro(SizeGreatestPrimeFactor, SizeValueType); itkGetMacro(SizeGreatestPrimeFactor, SizeValueType); From 226802f32025689c556474b6fd3bc8b8335a8524 Mon Sep 17 00:00:00 2001 From: Niels Dekker Date: Mon, 18 Mar 2024 18:45:51 +0100 Subject: [PATCH 3/3] STYLE: FUTURE_LEGACY_REMOVE BoundaryConditionPointerType type aliases It appears much clearer to directly use `BoundaryConditionType *`, to explicitly make clear when using a _raw_ pointer, rather than a _smart_ pointer. Note that the BoundaryConditionPointerType aliases of PadImageFilter and FFTPadImageFilter were unnecessary anyway, as they might be inherited from their base class, PadImageFilterBase. --- .../Convolution/include/itkConvolutionImageFilterBase.h | 5 ++++- Modules/Filtering/FFT/include/itkFFTPadImageFilter.h | 1 - Modules/Filtering/ImageGrid/include/itkPadImageFilter.h | 1 - Modules/Filtering/ImageGrid/include/itkPadImageFilterBase.h | 5 ++++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Modules/Filtering/Convolution/include/itkConvolutionImageFilterBase.h b/Modules/Filtering/Convolution/include/itkConvolutionImageFilterBase.h index 61ccf8e5c53..9ffdb5e605a 100644 --- a/Modules/Filtering/Convolution/include/itkConvolutionImageFilterBase.h +++ b/Modules/Filtering/Convolution/include/itkConvolutionImageFilterBase.h @@ -89,7 +89,10 @@ class ITK_TEMPLATE_EXPORT ConvolutionImageFilterBase : public ImageToImageFilter /** Typedef to describe the boundary condition. */ using BoundaryConditionType = ImageBoundaryCondition; - using BoundaryConditionPointerType = BoundaryConditionType *; +#ifndef ITK_FUTURE_LEGACY_REMOVE + using BoundaryConditionPointerType [[deprecated("Please just use `BoundaryConditionType *` instead!")]] = + BoundaryConditionType *; +#endif using DefaultBoundaryConditionType = ZeroFluxNeumannBoundaryCondition; /** Set/get the boundary condition. */ diff --git a/Modules/Filtering/FFT/include/itkFFTPadImageFilter.h b/Modules/Filtering/FFT/include/itkFFTPadImageFilter.h index 88526e0ff66..e98f3c5496e 100644 --- a/Modules/Filtering/FFT/include/itkFFTPadImageFilter.h +++ b/Modules/Filtering/FFT/include/itkFFTPadImageFilter.h @@ -95,7 +95,6 @@ class ITK_TEMPLATE_EXPORT FFTPadImageFilter : public PadImageFilterBase; - using BoundaryConditionPointerType = BoundaryConditionType *; using DefaultBoundaryConditionType = ZeroFluxNeumannBoundaryCondition; protected: diff --git a/Modules/Filtering/ImageGrid/include/itkPadImageFilter.h b/Modules/Filtering/ImageGrid/include/itkPadImageFilter.h index bb6a0bd1acd..daec48033b2 100644 --- a/Modules/Filtering/ImageGrid/include/itkPadImageFilter.h +++ b/Modules/Filtering/ImageGrid/include/itkPadImageFilter.h @@ -77,7 +77,6 @@ class ITK_TEMPLATE_EXPORT PadImageFilter : public PadImageFilterBase; - using BoundaryConditionPointerType = BoundaryConditionType *; /** \see LightObject::GetNameOfClass() */ itkOverrideGetNameOfClassMacro(PadImageFilter); diff --git a/Modules/Filtering/ImageGrid/include/itkPadImageFilterBase.h b/Modules/Filtering/ImageGrid/include/itkPadImageFilterBase.h index 967eeda3818..b44e0d96481 100644 --- a/Modules/Filtering/ImageGrid/include/itkPadImageFilterBase.h +++ b/Modules/Filtering/ImageGrid/include/itkPadImageFilterBase.h @@ -77,7 +77,10 @@ class ITK_TEMPLATE_EXPORT PadImageFilterBase : public ImageToImageFilter; - using BoundaryConditionPointerType = BoundaryConditionType *; +#ifndef ITK_FUTURE_LEGACY_REMOVE + using BoundaryConditionPointerType [[deprecated("Please just use `BoundaryConditionType *` instead!")]] = + BoundaryConditionType *; +#endif /** \see LightObject::GetNameOfClass() */ itkOverrideGetNameOfClassMacro(PadImageFilterBase);