18 #ifndef itkObjectToObjectMetricBase_h 19 #define itkObjectToObjectMetricBase_h 49 template<
typename TInternalComputationValueType=
double>
82 itkSetConstObjectMacro( FixedObject, ObjectType );
83 itkGetConstObjectMacro( FixedObject, ObjectType );
87 itkSetConstObjectMacro( MovingObject, ObjectType );
88 itkGetConstObjectMacro( MovingObject, ObjectType );
104 itkSetMacro( GradientSource, GradientSourceType );
110 itkGetConstMacro( GradientSource, GradientSourceType );
133 virtual MeasureType
GetValue() const ITK_OVERRIDE = 0;
142 virtual
void GetValueAndDerivative( MeasureType & value, DerivativeType & derivative ) const ITK_OVERRIDE = 0;
168 ParametersValueType factor =
NumericTraits<ParametersValueType>::OneValue()) = 0;
208 void operator=(const Self &) ITK_DELETE_FUNCTION;
216 #ifndef ITK_MANUAL_INSTANTIATION 217 #include "itkObjectToObjectMetricBase.hxx" Array< TInternalComputationValueType > DerivativeType
Superclass::ParametersType ParametersType
Superclass::MeasureType MeasureType
SingleValuedCostFunctionv4Template< TInternalComputationValueType > Superclass
virtual void Initialize(void)=0
TInternalComputationValueType MeasureType
virtual NumberOfParametersType GetNumberOfLocalParameters() const =0
GradientSourceType m_GradientSource
TInternalComputationValueType ParametersValueType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes...
ObjectConstPointer m_MovingObject
Base class for all object-to-object similarlity metrics added in ITKv4.
virtual NumberOfParametersType GetNumberOfParameters() const override=0
TInternalComputationValueType CoordinateRepresentationType
virtual void UpdateTransformParameters(const DerivativeType &derivative, ParametersValueType factor=NumericTraits< ParametersValueType >::OneValue())=0
virtual MetricCategoryType GetMetricCategory() const
void PrintSelf(std::ostream &os, Indent indent) const override
virtual const ParametersType & GetParameters() const =0
MeasureType GetCurrentValue() const
virtual void SetParameters(ParametersType ¶ms)=0
unsigned int NumberOfParametersType
Superclass::ParametersType ParametersType
Standard exception handling object.
ObjectType::ConstPointer ObjectConstPointer
bool GetGradientSourceIncludesFixed() const
DerivativeType::ValueType DerivativeValueType
ObjectToObjectMetricBaseTemplate Self
SmartPointer< Self > Pointer
virtual MeasureType GetValue() const override=0
virtual bool HasLocalSupport() const =0
ObjectConstPointer m_FixedObject
This class is a base for a CostFunction that returns a single value.
ObjectToObjectMetricBaseTemplate()
SmartPointer< const Self > ConstPointer
Control indentation during Print() invocation.
bool GetGradientSourceIncludesMoving() const
Superclass::DerivativeType DerivativeType
virtual void GetValueAndDerivative(MeasureType &value, DerivativeType &derivative) const override=0
virtual void GetDerivative(DerivativeType &) const =0
Define additional traits for native types such as int or float.
virtual ~ObjectToObjectMetricBaseTemplate()
Base class for most ITK classes.