<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Change SYSTEM "https://itk.org/migrationv4/ITKMigration.dtd">

<!--**
**
** ProcessObject MakeOutput and DataObject index type.xml
**
** >>>>>>>>>>>>>>>>>>>>>>>>>>>>
** THIS FILE HAS BEEN AUTOMATICALLY GENERATED. EDIT IT BEFORE COMMITING
** <<<<<<<<<<<<<<<<<<<<<<<<<<<
**
** Please, make sure this file validates the following w3c test before committing it: http://validator.w3.org
**-->
<Change>
    <!--**
    ** Title for the online migration page
    **-->
    <Title>
      Process Object  Make Output and  Data Object index type
    </Title>

    <!--**
    ** The author of the change
    **-->
    <Author>
      Matt McCormick
    </Author>

    <!--**
    ** Date of creation for the XML document
    **-->
    <Date>
      2011-11-17
    </Date>

    <!--**
    ** Plain text description of the change
    ** Extracted from git commit messages
    **-->
    <Description>
      To avoid integer type conversion warnings, functions that referenced the ProcessObject input and output DataObject array indices were made to use the DataObjectPointerArraySizeType consistently.  Previously, unsigned int, etc., were used.
    </Description>

    <!--**
    ** Sample code snippets
    ** Extracted from git diff of changed files in Examples and Testing
    **-->
    <SampleCode>
      <Old>
        DataObject::Pointer MakeOutput(unsigned int idx);
      </Old>

      <New>
        typedef ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType;
        DataObject::Pointer MakeOutput(DataObjectPointerArraySizeType idx);
      </New>

    </SampleCode>

    <!--**
    ** The change-ids for all commits in the topic branch
    **-->
    <Gerrit-ChangeId>
      I47f2194f358ade6fdd205cc59a11fb2cb6e378c6
    </Gerrit-ChangeId>

    <!--**
    ** List of all changed files from the topic branch
    **-->
    <FileList>
      Modules/Core/Common/include/itkImageSource.h
      Modules/Core/Common/include/itkImageSource.hxx
      Modules/Core/Common/include/itkProcessObject.h
      Modules/Core/Common/src/itkProcessObject.cxx
      Modules/Core/Mesh/include/itkImageToMeshFilter.h
      Modules/Core/Mesh/include/itkImageToMeshFilter.hxx
      Modules/Core/Mesh/include/itkMeshSource.h
      Modules/Core/Mesh/include/itkMeshSource.hxx
      Modules/Core/TestKernel/include/itkTestingHashImageFilter.h
      Modules/Core/TestKernel/include/itkTestingHashImageFilter.hxx
      Modules/Filtering/DistanceMap/include/itkDanielssonDistanceMapImageFilter.h
      Modules/Filtering/DistanceMap/include/itkDanielssonDistanceMapImageFilter.hxx
      Modules/Filtering/DistanceMap/include/itkSignedDanielssonDistanceMapImageFilter.h
      Modules/Filtering/DistanceMap/include/itkSignedDanielssonDistanceMapImageFilter.hxx
      Modules/Filtering/ImageStatistics/include/itkMinimumMaximumImageFilter.h
      Modules/Filtering/ImageStatistics/include/itkMinimumMaximumImageFilter.hxx
      Modules/Filtering/ImageStatistics/include/itkStatisticsImageFilter.h
      Modules/Filtering/ImageStatistics/include/itkStatisticsImageFilter.hxx
      Modules/Filtering/Path/include/itkPathSource.h
      Modules/Filtering/Path/include/itkPathSource.hxx
      Modules/Filtering/Thresholding/include/itkHistogramThresholdCalculator.h
      Modules/Nonunit/Review/include/itkMaskedMovingHistogramImageFilter.h
      Modules/Nonunit/Review/include/itkMaskedMovingHistogramImageFilter.hxx
      Modules/Nonunit/Review/include/itkMultiScaleHessianBasedMeasureImageFilter.h
      Modules/Nonunit/Review/include/itkMultiScaleHessianBasedMeasureImageFilter.hxx
      Modules/Numerics/Eigen/include/itkEigenAnalysis2DImageFilter.h
      Modules/Numerics/Eigen/include/itkEigenAnalysis2DImageFilter.hxx
      Modules/Numerics/FEM/include/itkFEMSolver.h
      Modules/Numerics/FEM/include/itkFEMSolver.hxx
      Modules/Numerics/FEM/include/itkImageToRectilinearFEMObjectFilter.h
      Modules/Numerics/FEM/include/itkImageToRectilinearFEMObjectFilter.hxx
      Modules/Numerics/Statistics/include/itkCovarianceSampleFilter.h
      Modules/Numerics/Statistics/include/itkCovarianceSampleFilter.hxx
      Modules/Numerics/Statistics/include/itkHistogramToRunLengthFeaturesFilter.h
      Modules/Numerics/Statistics/include/itkHistogramToRunLengthFeaturesFilter.hxx
      Modules/Numerics/Statistics/include/itkHistogramToTextureFeaturesFilter.h
      Modules/Numerics/Statistics/include/itkHistogramToTextureFeaturesFilter.hxx
      Modules/Numerics/Statistics/include/itkImageToHistogramFilter.h
      Modules/Numerics/Statistics/include/itkImageToHistogramFilter.hxx
      Modules/Numerics/Statistics/include/itkImageToListSampleFilter.h
      Modules/Numerics/Statistics/include/itkImageToListSampleFilter.hxx
      Modules/Numerics/Statistics/include/itkMeanSampleFilter.h
      Modules/Numerics/Statistics/include/itkMeanSampleFilter.hxx
      Modules/Numerics/Statistics/include/itkSampleClassifierFilter.h
      Modules/Numerics/Statistics/include/itkSampleClassifierFilter.hxx
      Modules/Numerics/Statistics/include/itkSampleToHistogramFilter.h
      Modules/Numerics/Statistics/include/itkSampleToHistogramFilter.hxx
      Modules/Numerics/Statistics/include/itkSampleToSubsampleFilter.h
      Modules/Numerics/Statistics/include/itkSampleToSubsampleFilter.hxx
      Modules/Numerics/Statistics/include/itkScalarImageToCooccurrenceListSampleFilter.h
      Modules/Numerics/Statistics/include/itkScalarImageToCooccurrenceListSampleFilter.hxx
      Modules/Numerics/Statistics/include/itkScalarImageToCooccurrenceMatrixFilter.h
      Modules/Numerics/Statistics/include/itkScalarImageToCooccurrenceMatrixFilter.hxx
      Modules/Numerics/Statistics/include/itkScalarImageToRunLengthFeaturesFilter.h
      Modules/Numerics/Statistics/include/itkScalarImageToRunLengthFeaturesFilter.hxx
      Modules/Numerics/Statistics/include/itkScalarImageToRunLengthMatrixFilter.h
      Modules/Numerics/Statistics/include/itkScalarImageToRunLengthMatrixFilter.hxx
      Modules/Numerics/Statistics/include/itkScalarImageToTextureFeaturesFilter.h
      Modules/Numerics/Statistics/include/itkScalarImageToTextureFeaturesFilter.hxx
      Modules/Numerics/Statistics/include/itkStandardDeviationPerComponentSampleFilter.h
      Modules/Numerics/Statistics/include/itkStandardDeviationPerComponentSampleFilter.hxx
      Modules/Registration/Common/include/itkImageRegistrationMethod.h
      Modules/Registration/Common/include/itkImageRegistrationMethod.hxx
      Modules/Registration/Common/include/itkImageToSpatialObjectRegistrationMethod.h
      Modules/Registration/Common/include/itkImageToSpatialObjectRegistrationMethod.hxx
      Modules/Registration/Common/include/itkMultiResolutionImageRegistrationMethod.h
      Modules/Registration/Common/include/itkMultiResolutionImageRegistrationMethod.hxx
      Modules/Registration/Common/include/itkPointSetToImageRegistrationMethod.h
      Modules/Registration/Common/include/itkPointSetToImageRegistrationMethod.hxx
      Modules/Registration/Common/include/itkPointSetToPointSetRegistrationMethod.h
      Modules/Registration/Common/include/itkPointSetToPointSetRegistrationMethod.hxx
      Modules/Registration/RegistrationMethodsv4/include/itkImageRegistrationMethodv4.h
      Modules/Registration/RegistrationMethodsv4/include/itkImageRegistrationMethodv4.hxx
      Modules/Segmentation/Classifiers/include/itkBayesianClassifierImageFilter.h
      Modules/Segmentation/Classifiers/include/itkBayesianClassifierImageFilter.hxx
      Modules/Segmentation/Watersheds/include/itkWatershedBoundaryResolver.h
      Modules/Segmentation/Watersheds/include/itkWatershedBoundaryResolver.hxx
      Modules/Segmentation/Watersheds/include/itkWatershedEquivalenceRelabeler.h
      Modules/Segmentation/Watersheds/include/itkWatershedEquivalenceRelabeler.hxx
      Modules/Segmentation/Watersheds/include/itkWatershedRelabeler.h
      Modules/Segmentation/Watersheds/include/itkWatershedRelabeler.hxx
      Modules/Segmentation/Watersheds/include/itkWatershedSegmentTreeGenerator.h
      Modules/Segmentation/Watersheds/include/itkWatershedSegmentTreeGenerator.hxx
      Modules/Segmentation/Watersheds/include/itkWatershedSegmenter.h
      Modules/Segmentation/Watersheds/include/itkWatershedSegmenter.hxx
      Modules/Video/Core/include/itkVideoSource.h
      Modules/Video/Core/include/itkVideoSource.hxx
    </FileList>

    <!--**
    ** If the migration can be accomplished by a simple string
    ** substitution, then use the following construct to define
    ** the substitution rule.
    **
    ** <MigrationFix-Automatic>
    **   <Old>
    **     <![CDATA[MipsleledName]]>
    **   </Old>
    **   <New>
    **     <![CDATA[MisspelledName]]>
    **   </New>
    ** </MigrationFix-Automatic>
    **-->

    <!--**
    ** If the migration can NOT be accomplished by a simple string
    ** substitution, but potential problem spots can be identified,
    ** use the following construct to define a migration flag rule.
    **
    ** <MigrationFix-Manual>
    **   OldFunctionName
    ** </MigrationFix-Manual>
    **-->

</Change>
