Skip to content

Commit 4db53ff

Browse files
authored
Merge pull request #5814 from N-Dekker/Use-iterator-WithIndex
Use an iterator 'WithIndex' when the index is retrieved during each iteration
2 parents aff0a03 + cbf4246 commit 4db53ff

File tree

12 files changed

+40
-31
lines changed

12 files changed

+40
-31
lines changed

Modules/Filtering/DisplacementField/include/itkInvertDisplacementFieldImageFilter.hxx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
#include "itkComposeDisplacementFieldsImageFilter.h"
2323
#include "itkImageDuplicator.h"
2424
#include "itkImageRegionIterator.h"
25+
#include "itkImageRegionIteratorWithIndex.h"
2526
#include <mutex>
2627
#include "itkProgressTransformer.h"
2728

@@ -181,7 +182,7 @@ InvertDisplacementFieldImageFilter<TInputImage, TOutputImage>::DynamicThreadedGe
181182

182183
if (this->m_DoThreadedEstimateInverse)
183184
{
184-
ImageRegionIterator<DisplacementFieldType> ItI(this->GetOutput(), region);
185+
ImageRegionIteratorWithIndex<DisplacementFieldType> ItI(this->GetOutput(), region);
185186

186187
for (ItI.GoToBegin(), ItE.GoToBegin(), ItS.GoToBegin(); !ItI.IsAtEnd(); ++ItI, ++ItE, ++ItS)
187188
{
@@ -194,7 +195,7 @@ InvertDisplacementFieldImageFilter<TInputImage, TOutputImage>::DynamicThreadedGe
194195
}
195196
update = ItI.Get() + update * this->m_Epsilon;
196197
ItI.Set(update);
197-
typename DisplacementFieldType::IndexType index = ItI.ComputeIndex();
198+
typename DisplacementFieldType::IndexType index = ItI.GetIndex();
198199
if (this->m_EnforceBoundaryCondition)
199200
{
200201
for (unsigned int d = 0; d < ImageDimension; ++d)

Modules/Filtering/DisplacementField/include/itkIterativeInverseDisplacementFieldImageFilter.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,10 @@ class ITK_TEMPLATE_EXPORT IterativeInverseDisplacementFieldImageFilter
8585

8686
using InputConstIterator = ImageRegionConstIterator<InputImageType>;
8787
using InputIterator = ImageRegionIterator<InputImageType>;
88-
using OutputIterator = ImageRegionIterator<OutputImageType>;
89-
88+
#ifndef ITK_FUTURE_LEGACY_REMOVE
89+
using OutputIterator ITK_FUTURE_DEPRECATED("Please use `itk::ImageRegionIterator<TImage>` directly!") =
90+
ImageRegionIterator<OutputImageType>;
91+
#endif
9092
using VectorWarperType = WarpVectorImageFilter<TOutputImage, TInputImage, TOutputImage>;
9193

9294
using FieldInterpolatorType = VectorLinearInterpolateImageFunction<TInputImage, double>;

Modules/Filtering/DisplacementField/include/itkIterativeInverseDisplacementFieldImageFilter.hxx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#ifndef itkIterativeInverseDisplacementFieldImageFilter_hxx
1919
#define itkIterativeInverseDisplacementFieldImageFilter_hxx
2020

21+
#include "itkImageRegionIteratorWithIndex.h"
2122
#include "itkProgressReporter.h"
2223
#include "itkMath.h"
2324

@@ -87,9 +88,9 @@ IterativeInverseDisplacementFieldImageFilter<TInputImage, TOutputImage>::Generat
8788
// calculate the inverted field
8889
const double spacing = inputPtr->GetSpacing()[0];
8990

90-
ProgressReporter progress(this, 0, inputPtr->GetLargestPossibleRegion().GetNumberOfPixels());
91-
OutputIterator OutputIt(outputPtr, outputPtr->GetRequestedRegion());
92-
const FieldInterpolatorPointer inputFieldInterpolator = FieldInterpolatorType::New();
91+
ProgressReporter progress(this, 0, inputPtr->GetLargestPossibleRegion().GetNumberOfPixels());
92+
ImageRegionIteratorWithIndex<OutputImageType> OutputIt(outputPtr, outputPtr->GetRequestedRegion());
93+
const FieldInterpolatorPointer inputFieldInterpolator = FieldInterpolatorType::New();
9394
inputFieldInterpolator->SetInputImage(inputPtr);
9495

9596
double smallestError = 0;
@@ -98,7 +99,7 @@ IterativeInverseDisplacementFieldImageFilter<TInputImage, TOutputImage>::Generat
9899
while (!OutputIt.IsAtEnd())
99100
{
100101
// get the output image index
101-
const OutputImageIndexType index = OutputIt.ComputeIndex();
102+
const OutputImageIndexType index = OutputIt.GetIndex();
102103
OutputImagePointType originalPoint;
103104
outputPtr->TransformIndexToPhysicalPoint(index, originalPoint);
104105

Modules/Filtering/ImageGradient/include/itkDifferenceOfGaussiansGradientImageFilter.hxx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
#include <cmath>
2222
#include "itkProgressReporter.h"
23-
#include "itkImageRegionIterator.h"
23+
#include "itkImageRegionIteratorWithIndex.h"
2424

2525
namespace itk
2626
{
@@ -62,7 +62,7 @@ DifferenceOfGaussiansGradientImageFilter<TInputImage, TDataType>::GenerateData()
6262
ProgressReporter progress(this, 0, outputPtr->GetRequestedRegion().GetNumberOfPixels());
6363

6464
// Create an iterator that will walk the output region
65-
using OutputIterator = ImageRegionIterator<TOutputImage>;
65+
using OutputIterator = ImageRegionIteratorWithIndex<TOutputImage>;
6666

6767
OutputIterator outIt(outputPtr, outputPtr->GetRequestedRegion());
6868

@@ -76,7 +76,7 @@ DifferenceOfGaussiansGradientImageFilter<TInputImage, TDataType>::GenerateData()
7676
for (; !outIt.IsAtEnd(); ++outIt)
7777
{
7878
// determine the index of the output pixel
79-
outputIndex = outIt.ComputeIndex();
79+
outputIndex = outIt.GetIndex();
8080

8181
// is the current index an acceptable distance from the edges
8282
// of the image?

Modules/Filtering/ImageGrid/include/itkMirrorPadImageFilter.hxx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -716,7 +716,7 @@ MirrorPadImageFilter<TInputImage, TOutputImage>::DynamicThreadedGenerateData(
716716

717717
// Define/declare iterators that will walk the input and output regions
718718
// for this thread.
719-
using OutputIterator = ImageRegionIterator<TOutputImage>;
719+
using OutputIterator = ImageRegionIteratorWithIndex<TOutputImage>;
720720
using InputIterator = ImageRegionConstIterator<TInputImage>;
721721

722722
TotalProgressReporter progress(this, this->GetOutput()->GetRequestedRegion().GetNumberOfPixels());
@@ -756,7 +756,7 @@ MirrorPadImageFilter<TInputImage, TOutputImage>::DynamicThreadedGenerateData(
756756
InputIterator inIt(inputPtr, inputRegion);
757757
for (OutputIterator outIt(outputPtr, outputRegion); !outIt.IsAtEnd(); ++outIt, i++, ++inIt)
758758
{
759-
OutputImageIndexType currentOutputIndex = outIt.ComputeIndex();
759+
OutputImageIndexType currentOutputIndex = outIt.GetIndex();
760760

761761
this->ConvertOutputIndexToInputIndex(
762762
currentOutputIndex, currentInputIndex, outputRegion, inputRegion, oddRegionArray, decayFactor);

Modules/Filtering/ImageSources/include/itkGaussianImageSource.hxx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
#define itkGaussianImageSource_hxx
2020

2121
#include "itkGaussianSpatialFunction.h"
22-
#include "itkImageRegionIterator.h"
22+
#include "itkImageRegionIteratorWithIndex.h"
2323
#include "itkProgressReporter.h"
2424
#include "itkObjectFactory.h"
2525

@@ -96,13 +96,13 @@ GaussianImageSource<TOutputImage>::GenerateData()
9696
gaussian->SetNormalized(m_Normalized);
9797

9898
// Create an iterator that will walk the output region
99-
using OutputIterator = ImageRegionIterator<TOutputImage>;
99+
using OutputIterator = ImageRegionIteratorWithIndex<TOutputImage>;
100100

101101
ProgressReporter progress(this, 0, outputPtr->GetRequestedRegion().GetNumberOfPixels());
102102
// Walk the output image, evaluating the spatial function at each pixel
103103
for (OutputIterator outIt(outputPtr, outputPtr->GetRequestedRegion()); !outIt.IsAtEnd(); ++outIt)
104104
{
105-
const typename TOutputImage::IndexType index = outIt.ComputeIndex();
105+
const typename TOutputImage::IndexType index = outIt.GetIndex();
106106
// The position at which the function is evaluated
107107
typename FunctionType::InputType evalPoint;
108108
outputPtr->TransformIndexToPhysicalPoint(index, evalPoint);

Modules/Filtering/ImageStatistics/include/itkAccumulateImageFilter.hxx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@
1818
#ifndef itkAccumulateImageFilter_hxx
1919
#define itkAccumulateImageFilter_hxx
2020

21-
#include "itkImageRegionIterator.h"
21+
#include "itkImageRegionConstIterator.h"
22+
#include "itkImageRegionIteratorWithIndex.h"
2223

2324
namespace itk
2425
{
@@ -149,7 +150,7 @@ AccumulateImageFilter<TInputImage, TOutputImage>::GenerateData()
149150

150151
// Accumulate over the Nth dimension ( = m_AccumulateDimension)
151152
// and divide by the size of the accumulated dimension.
152-
using outputIterType = ImageRegionIterator<TOutputImage>;
153+
using outputIterType = ImageRegionIteratorWithIndex<TOutputImage>;
153154
outputIterType outputIter(outputImage, outputImage->GetBufferedRegion());
154155
using inputIterType = ImageRegionConstIterator<TInputImage>;
155156

@@ -168,7 +169,7 @@ AccumulateImageFilter<TInputImage, TOutputImage>::GenerateData()
168169
}
169170
while (!outputIter.IsAtEnd())
170171
{
171-
typename TOutputImage::IndexType OutputIndex = outputIter.ComputeIndex();
172+
typename TOutputImage::IndexType OutputIndex = outputIter.GetIndex();
172173
for (unsigned int i = 0; i < InputImageDimension; ++i)
173174
{
174175
if (i != m_AccumulateDimension)

Modules/Filtering/Smoothing/include/itkBinomialBlurImageFilter.hxx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
#include "itkProgressReporter.h"
2323
#include "itkImageRegion.h"
2424
#include "itkImageRegionConstIterator.h"
25+
#include "itkImageRegionIteratorWithIndex.h"
2526
#include "itkImageRegionReverseIterator.h"
2627
#include <algorithm> // For min and max.
2728

@@ -114,7 +115,7 @@ BinomialBlurImageFilter<TInputImage, TOutputImage>::GenerateData()
114115
typename TInputImage::IndexType startIndex = inputPtr->GetRequestedRegion().GetIndex();
115116

116117
// Iterator Typedefs for this routine
117-
using TempIterator = ImageRegionIterator<TTempImage>;
118+
using TempIterator = ImageRegionIteratorWithIndex<TTempImage>;
118119
using TempReverseIterator = ImageRegionReverseIterator<TTempImage>;
119120
using InputIterator = ImageRegionConstIterator<TInputImage>;
120121
using OutputIterator = ImageRegionIterator<TOutputImage>;
@@ -150,7 +151,7 @@ BinomialBlurImageFilter<TInputImage, TOutputImage>::GenerateData()
150151
while (!tempItDir.IsAtEnd())
151152
{
152153
// determine the index of the output pixel
153-
index = tempItDir.ComputeIndex();
154+
index = tempItDir.GetIndex();
154155

155156
if (index[dim] < (startIndex[dim] + static_cast<typename TTempImage::OffsetValueType>(size[dim]) - 1))
156157
{

Modules/Filtering/SpatialFunction/include/itkSpatialFunctionImageEvaluatorFilter.hxx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#define itkSpatialFunctionImageEvaluatorFilter_hxx
2020

2121
#include "itkImageRegion.h"
22+
#include "itkImageRegionIteratorWithIndex.h"
2223

2324
namespace itk
2425
{
@@ -41,7 +42,7 @@ SpatialFunctionImageEvaluatorFilter<TSpatialFunction, TInputImage, TOutputImage>
4142
outputPtr->Allocate();
4243

4344
// Create an iterator that will walk the output region
44-
using OutputIterator = ImageRegionIterator<TOutputImage>;
45+
using OutputIterator = ImageRegionIteratorWithIndex<TOutputImage>;
4546

4647
OutputIterator outIt(outputPtr, outputPtr->GetRequestedRegion());
4748

@@ -56,7 +57,7 @@ SpatialFunctionImageEvaluatorFilter<TSpatialFunction, TInputImage, TOutputImage>
5657
// Walk the output image, evaluating the spatial function at each pixel
5758
for (; !outIt.IsAtEnd(); ++outIt)
5859
{
59-
const typename TOutputImage::IndexType index = outIt.ComputeIndex();
60+
const typename TOutputImage::IndexType index = outIt.GetIndex();
6061
outputPtr->TransformIndexToPhysicalPoint(index, evalPoint);
6162
value = m_PixelFunction->Evaluate(evalPoint);
6263

Modules/Nonunit/Review/include/itkLabelGeometryImageFilter.hxx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ LabelGeometryImageFilter<TLabelImage, TIntensityImage>::GenerateData()
176176
LabelPixelType label;
177177

178178
// Iterator over the label image.
179-
ImageRegionConstIterator<TLabelImage> labelIt(this->GetInput(), this->GetInput()->GetBufferedRegion());
179+
ImageRegionConstIteratorWithIndex<TLabelImage> labelIt(this->GetInput(), this->GetInput()->GetBufferedRegion());
180180

181181
using ImageIteratorWithIndexType = ImageRegionConstIteratorWithIndex<TLabelImage>;
182182

@@ -212,7 +212,7 @@ LabelGeometryImageFilter<TLabelImage, TIntensityImage>::GenerateData()
212212
// BOUNDING BOX
213213
// The bounding box is defined in (min, max) pairs, such as
214214
// (xmin,xmax,ymin,ymax,zmin,zmax).
215-
typename ImageIteratorWithIndexType::IndexType index = labelIt.ComputeIndex();
215+
typename ImageIteratorWithIndexType::IndexType index = labelIt.GetIndex();
216216
for (unsigned int i = 0; i < (2 * ImageDimension); i += 2)
217217
{
218218
// Update min

0 commit comments

Comments
 (0)