#include <itkLimiterFunctionBase.h>
Base class for all ITK limiter function objects.
LimiterFunctionBase is the base class for ITK limiter function objects. The abstract method Evaluate() should limit a function, i.e. it should make sure that its output is below a certain value. The derivative of a function that is limited also changes.
In formula:
where
Subclasses must override Evaluate(value) and Evaluate(value, derivative) .
This class is template over the input type and the dimension of
Definition at line 50 of file itkLimiterFunctionBase.h.
Public Types | |
using | ConstPointer = SmartPointer<const Self> |
using | DerivativeType = CovariantVector<DerivativeValueType, Self::Dimension> |
using | DerivativeValueType = OutputType |
using | Pointer = SmartPointer<Self> |
using | Self = LimiterFunctionBase |
using | Superclass = FunctionBase<TInput, typename NumericTraits<TInput>::RealType> |
Public Member Functions | |
OutputType | Evaluate (const InputType &input) const override=0 |
virtual OutputType | Evaluate (const InputType &input, DerivativeType &derivative) const =0 |
virtual const char * | GetClassName () const |
virtual OutputType | GetLowerBound () const |
virtual InputType | GetLowerThreshold () const |
virtual OutputType | GetUpperBound () const |
virtual InputType | GetUpperThreshold () const |
virtual void | Initialize () |
ITK_DISALLOW_COPY_AND_MOVE (LimiterFunctionBase) | |
itkStaticConstMacro (Dimension, unsigned int, NDimension) | |
virtual void | SetLowerBound (OutputType _arg) |
virtual void | SetLowerThreshold (InputType _arg) |
virtual void | SetUpperBound (OutputType _arg) |
virtual void | SetUpperThreshold (InputType _arg) |
Protected Member Functions | |
LimiterFunctionBase () | |
~LimiterFunctionBase () override=default | |
Protected Attributes | |
OutputType | m_LowerBound {} |
InputType | m_LowerThreshold {} |
OutputType | m_UpperBound {} |
InputType | m_UpperThreshold {} |
using itk::LimiterFunctionBase< TInput, NDimension >::ConstPointer = SmartPointer<const Self> |
Definition at line 59 of file itkLimiterFunctionBase.h.
using itk::LimiterFunctionBase< TInput, NDimension >::DerivativeType = CovariantVector<DerivativeValueType, Self::Dimension> |
Definition at line 71 of file itkLimiterFunctionBase.h.
using itk::LimiterFunctionBase< TInput, NDimension >::DerivativeValueType = OutputType |
Definition at line 70 of file itkLimiterFunctionBase.h.
using itk::LimiterFunctionBase< TInput, NDimension >::Pointer = SmartPointer<Self> |
Definition at line 58 of file itkLimiterFunctionBase.h.
using itk::LimiterFunctionBase< TInput, NDimension >::Self = LimiterFunctionBase |
Standard class typedefs.
Definition at line 56 of file itkLimiterFunctionBase.h.
using itk::LimiterFunctionBase< TInput, NDimension >::Superclass = FunctionBase<TInput, typename NumericTraits<TInput>::RealType> |
Definition at line 57 of file itkLimiterFunctionBase.h.
|
inlineprotected |
Definition at line 107 of file itkLimiterFunctionBase.h.
|
overrideprotecteddefault |
|
overridepure virtual |
Limit the input value.
Implemented in itk::ExponentialLimiterFunction< TInput, NDimension >, and itk::HardLimiterFunction< TInput, NDimension >.
|
pure virtual |
Limit the input value and change the input function derivative accordingly
Implemented in itk::ExponentialLimiterFunction< TInput, NDimension >, and itk::HardLimiterFunction< TInput, NDimension >.
|
virtual |
Run-time type information (and related methods).
Reimplemented in itk::ExponentialLimiterFunction< TInput, NDimension >, and itk::HardLimiterFunction< TInput, NDimension >.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
inlinevirtual |
Initialize the limiter
Reimplemented in itk::ExponentialLimiterFunction< TInput, NDimension >.
Definition at line 103 of file itkLimiterFunctionBase.h.
itk::LimiterFunctionBase< TInput, NDimension >::ITK_DISALLOW_COPY_AND_MOVE | ( | LimiterFunctionBase< TInput, NDimension > | ) |
itk::LimiterFunctionBase< TInput, NDimension >::itkStaticConstMacro | ( | Dimension | , |
unsigned int | , | ||
NDimension | ) |
|
virtual |
Set/Get the lower bound that the output should respect. Make sure it is lower than the higher bound.
|
virtual |
Set the point where the limiter starts to work. Only input values below this number will possibly be affected. Make sure it is >= than the LowerBound.
|
virtual |
Set/Get the upper bound that the output should respect. Make sure it is higher than the lower bound.
|
virtual |
Set the point where the limiter starts to work. Only input values above this number will possibly be affected. Make sure it is <= than the UpperBound.
|
protected |
Definition at line 119 of file itkLimiterFunctionBase.h.
|
protected |
Definition at line 121 of file itkLimiterFunctionBase.h.
|
protected |
Definition at line 118 of file itkLimiterFunctionBase.h.
|
protected |
Definition at line 120 of file itkLimiterFunctionBase.h.
Generated on 2024-07-17
for elastix by ![]() |
![]() |