14 #ifndef __itkLimiterFunctionBase_h
15 #define __itkLimiterFunctionBase_h
17 #include "itkFunctionBase.h"
18 #include "itkExceptionObject.h"
45 template<
class TInput,
unsigned int NDimension >
47 public FunctionBase< TInput, typename NumericTraits< TInput >::RealType >
67 typedef CovariantVector<
72 virtual OutputType
Evaluate(
const InputType & input )
const = 0;
79 itkSetMacro( UpperBound, OutputType );
80 itkGetConstMacro( UpperBound, OutputType );
84 itkSetMacro( LowerBound, OutputType );
85 itkGetConstMacro( LowerBound, OutputType );
89 itkSetMacro( UpperThreshold, InputType );
90 itkGetConstMacro( UpperThreshold, InputType );
94 itkSetMacro( LowerThreshold, InputType );
95 itkGetConstMacro( LowerThreshold, InputType );
98 virtual void Initialize(
void ) throw ( ExceptionObject ) {}
105 = itk::NumericTraits< OutputType >::One
106 + itk::NumericTraits< OutputType >::One;
107 this->
m_LowerBound = itk::NumericTraits< OutputType >::Zero;
itkStaticConstMacro(Dimension, unsigned int, NDimension)
CovariantVector< DerivativeValueType, itkGetStaticConstMacro(Dimension) > DerivativeType
virtual void Initialize(void)
SmartPointer< Self > Pointer
InputType m_UpperThreshold
InputType m_LowerThreshold
virtual OutputType Evaluate(const InputType &input) const =0
FunctionBase< TInput, typename NumericTraits< TInput >::RealType > Superclass
Base class for all ITK limiter function objects.
Superclass::InputType InputType
SmartPointer< const Self > ConstPointer
Superclass::OutputType OutputType
OutputType DerivativeValueType
void operator=(const Self &)