15 #ifndef itkUCLRegularStepOptimizer_h
16 #define itkUCLRegularStepOptimizer_h
18 #include <NifTKConfigure.h>
21 #include <itkSingleValuedNonLinearOptimizer.h>
33 public SingleValuedNonLinearOptimizer
47 SingleValuedNonLinearOptimizer );
52 ImageNotAvailable = 2,
53 CostFunctionError = 3,
54 MaximumNumberOfIterations = 4,
59 itkSetMacro( Maximize,
bool );
60 itkGetConstReferenceMacro( Maximize,
bool );
61 itkBooleanMacro( Maximize );
63 {
return !m_Maximize; }
65 { this->SetMaximize(!v); }
67 { SetMaximize(
false ); }
69 { SetMaximize(
true ); }
72 void StartOptimization(
void )
override;
76 void ResumeOptimization(
void );
80 void StopOptimization(
void );
83 itkSetMacro( MaximumStepLength,
double );
84 itkSetMacro( MinimumStepLength,
double );
85 itkSetMacro( RelaxationFactor,
double );
86 itkSetMacro( NumberOfIterations,
unsigned long );
87 itkGetConstReferenceMacro( CurrentStepLength,
double);
88 itkGetConstReferenceMacro( MaximumStepLength,
double );
89 itkGetConstReferenceMacro( MinimumStepLength,
double );
90 itkGetConstReferenceMacro( RelaxationFactor,
double );
91 itkGetConstReferenceMacro( NumberOfIterations,
unsigned long );
92 itkGetConstMacro( CurrentIteration,
unsigned int );
93 itkGetConstReferenceMacro( StopCondition, StopConditionType );
94 itkGetConstReferenceMacro( Value, MeasureType );
99 void PrintSelf(std::ostream& os, Indent indent)
const override;
103 void operator=(
const Self&);
SingleValuedNonLinearOptimizer Superclass
Definition: itkUCLRegularStepOptimizer.h:38
ParametersType m_BestSoFarParameters
Definition: itkUCLRegularStepOptimizer.h:110
UCLRegularStepOptimizer Self
Definition: itkUCLRegularStepOptimizer.h:37
void MinimizeOn(void)
Definition: itkUCLRegularStepOptimizer.h:66
Definition: niftkITKAffineResampleImage.cxx:74
SmartPointer< const Self > ConstPointer
Definition: itkUCLRegularStepOptimizer.h:40
StopConditionType
Definition: itkUCLRegularStepOptimizer.h:50
MeasureType m_BestSoFarValue
Definition: itkUCLRegularStepOptimizer.h:109
double m_RelaxationFactor
Definition: itkUCLRegularStepOptimizer.h:114
double m_MaximumStepLength
Definition: itkUCLRegularStepOptimizer.h:111
unsigned long m_NumberOfIterations
Definition: itkUCLRegularStepOptimizer.h:116
Implement a Regular Step Size optimizer.
Definition: itkUCLRegularStepOptimizer.h:32
const GLdouble * v
Definition: glew.h:1375
bool GetMinimize() const
Definition: itkUCLRegularStepOptimizer.h:62
virtual ~UCLRegularStepOptimizer()
Definition: itkUCLRegularStepOptimizer.h:98
void MinimizeOff(void)
Definition: itkUCLRegularStepOptimizer.h:68
unsigned long m_CurrentIteration
Definition: itkUCLRegularStepOptimizer.h:117
StopConditionType m_StopCondition
Definition: itkUCLRegularStepOptimizer.h:115
double m_MinimumStepLength
Definition: itkUCLRegularStepOptimizer.h:112
double m_CurrentStepLength
Definition: itkUCLRegularStepOptimizer.h:113
MeasureType m_Value
Definition: itkUCLRegularStepOptimizer.h:108
void SetMinimize(bool v)
Definition: itkUCLRegularStepOptimizer.h:64
SmartPointer< Self > Pointer
Definition: itkUCLRegularStepOptimizer.h:39
bool m_Stop
Definition: itkUCLRegularStepOptimizer.h:106
bool m_Maximize
Definition: itkUCLRegularStepOptimizer.h:107