18#ifndef itkDistanceMetric_h
19#define itkDistanceMetric_h
47template <
typename TVector>
120 if (defaultLength != s)
122 itkExceptionMacro(
"Attempting to change the measurement vector size of a non-resizable vector type");
145#ifndef ITK_MANUAL_INSTANTIATION
146# include "itkDistanceMetric.hxx"
Array class with size defined at construction time.
Control indentation during Print() invocation.
static unsigned int GetLength(const T &)
virtual void Modified() const
Implements transparent reference counting.
SmartPointer< const Self > ConstPointer
virtual double Evaluate(const MeasurementVectorType &x1, const MeasurementVectorType &x2) const =0
void SetOrigin(const OriginType &x)
SmartPointer< Self > Pointer
Array< double > OriginType
~DistanceMetric() override=default
virtual void SetMeasurementVectorSize(MeasurementVectorSizeType s)
TVector MeasurementVectorType
FunctionBase< TVector, double > Superclass
MeasurementVectorSizeType m_MeasurementVectorSize
double Evaluate(const MeasurementVectorType &x) const override=0
unsigned int MeasurementVectorSizeType
void PrintSelf(std::ostream &os, Indent indent) const override
static bool IsResizable(const TVectorType &)
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....