18 #ifndef itkExhaustiveOptimizer_h
19 #define itkExhaustiveOptimizer_h
23 #include "ITKOptimizersExport.h"
103 StartOptimization()
override;
116 itkSetMacro(StepLength,
double);
118 itkGetConstReferenceMacro(StepLength,
double);
119 itkGetConstReferenceMacro(NumberOfSteps,
StepsType);
120 itkGetConstReferenceMacro(CurrentValue, MeasureType);
121 itkGetConstReferenceMacro(MaximumMetricValue, MeasureType);
122 itkGetConstReferenceMacro(MinimumMetricValue, MeasureType);
123 itkGetConstReferenceMacro(MinimumMetricValuePosition, ParametersType);
124 itkGetConstReferenceMacro(MaximumMetricValuePosition, ParametersType);
125 itkGetConstReferenceMacro(CurrentIndex, ParametersType);
126 itkGetConstReferenceMacro(MaximumNumberOfIterations,
SizeValueType);
130 GetStopConditionDescription()
const override;
136 PrintSelf(std::ostream & os,
Indent indent)
const override;
143 IncrementIndex(ParametersType & newPosition);
146 MeasureType m_CurrentValue{ 0 };
152 bool m_Stop{
false };
154 unsigned int m_CurrentParameter{ 0 };
156 double m_StepLength{ 1.0 };
158 ParametersType m_CurrentIndex{};
166 ParametersType m_MinimumMetricValuePosition{};
168 ParametersType m_MaximumMetricValuePosition{};
171 std::ostringstream m_StopConditionDescription{};