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

<!--**
**
** RenameGetValueToGetCurrentMetricValue.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>
      ObjectToObjectOptimizerBase: Rename GetValue() to GetCurrentMetricValue()
    </Title>

    <!--**
    ** The author of the change
    **-->
    <Author>
      Michael Stauffer
    </Author>

    <!--**
    ** Date of creation for the XML document
    **-->
    <Date>
      2012-06-08
    </Date>

    <!--**
    ** Plain text description of the change
    ** Extracted from git commit messages
    **-->
    <Description>
      <![CDATA[
      Rename ObjectToObjectOptimizerBase::m_Value to m_CurrentMetricValue to avoid confusion with ObjectToObjectMetricv4::m_Value.
      Also, new name is more consistent with other names in the class.
      Derived optimizers will need to rename any use of m_Value.
      The new accessor is GetCurrentMetricValue().
      The original GetValue() method is retained, returning m_CurrentMetricValue, for backwards compatiblity.
      ]]>
    </Description>

    <!--**
    ** Sample code snippets
    ** Extracted from git diff of changed files in Examples and Testing
    **-->
    <SampleCode>
      <Old>
        <![CDATA[
        myOptimizerv4->GetValue();
        ]]>
      </Old>

      <New>
        <![CDATA[
        myOptimizerv4->GetCurrentMetricValue();
        ]]>
      </New>

    </SampleCode>

    <SampleCode>
      <Old>
        <![CDATA[
        MyDerivedOptimizerv4::Pointer optimizer = MyDerivedOptimizerv4::New();
        optimizer->m_Value = 319;
        ]]>
      </Old>

      <New>
        <![CDATA[
        MyDerivedOptimizerv4::Pointer optimizer = MyDerivedOptimizerv4::New();
        optimizer->m_CurrentMetricValue = 319;
        ]]>
      </New>

    </SampleCode>

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

    <!--**
    ** List of all changed files from the topic branch
    **-->
    <FileList>
      Modules/Numerics/Optimizersv4/include/itkGradientDescentOptimizerv4.h
      Modules/Numerics/Optimizersv4/include/itkObjectToObjectOptimizerBase.h
      Modules/Numerics/Optimizersv4/src/itkGradientDescentOptimizerv4.cxx
      Modules/Numerics/Optimizersv4/src/itkMultiGradientOptimizerv4.cxx
      Modules/Numerics/Optimizersv4/src/itkMultiStartOptimizerv4.cxx
      Modules/Numerics/Optimizersv4/src/itkObjectToObjectOptimizerBase.cxx
      Modules/Numerics/Optimizersv4/src/itkQuasiNewtonOptimizerv4.cxx
      Modules/Numerics/Optimizersv4/test/itkGradientDescentOptimizerBasev4Test.cxx
      Modules/Numerics/Optimizersv4/test/itkObjectToObjectOptimizerBaseTest.cxx
      Modules/Registration/Metricsv4/test/itkEuclideanDistancePointSetMetricRegistrationTest.cxx
      Modules/Registration/Metricsv4/test/itkExpectationBasedPointSetMetricRegistrationTest.cxx
      Modules/Registration/Metricsv4/test/itkJointHistogramMutualInformationImageToImageRegistrationTest.cxx
      Modules/Registration/Metricsv4/test/itkObjectToObjectMultiMetricv4RegistrationTest.cxx
      Modules/Registration/RegistrationMethodsv4/test/itkSimpleImageRegistrationTest.cxx
    </FileList>

</Change>
