# This file was automatically generated by SWIG (https://www.swig.org).
# Version 4.3.1
#
# Do not make changes to this file unless you know what you are doing - modify
# the SWIG interface file instead.

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _itkFiniteDifferenceFunctionPython
else:
    import _itkFiniteDifferenceFunctionPython

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

_swig_new_instance_method = _itkFiniteDifferenceFunctionPython.SWIG_PyInstanceMethod_New
_swig_new_static_method = _itkFiniteDifferenceFunctionPython.SWIG_PyStaticMethod_New

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)


import ITKCommonBasePython
import pyBasePython
import itkSizePython
import itkVectorPython
import vnl_vector_refPython
import stdcomplexPython
import vnl_vectorPython
import vnl_matrixPython
import itkFixedArrayPython
import itkCovariantVectorPython

def itkFiniteDifferenceFunctionICVF43_New():
  return itkFiniteDifferenceFunctionICVF43.New()


def itkFiniteDifferenceFunctionICVF42_New():
  return itkFiniteDifferenceFunctionICVF42.New()


def itkFiniteDifferenceFunctionICVF33_New():
  return itkFiniteDifferenceFunctionICVF33.New()


def itkFiniteDifferenceFunctionICVF32_New():
  return itkFiniteDifferenceFunctionICVF32.New()


def itkFiniteDifferenceFunctionICVF23_New():
  return itkFiniteDifferenceFunctionICVF23.New()


def itkFiniteDifferenceFunctionICVF22_New():
  return itkFiniteDifferenceFunctionICVF22.New()


def itkFiniteDifferenceFunctionIVF43_New():
  return itkFiniteDifferenceFunctionIVF43.New()


def itkFiniteDifferenceFunctionIVF42_New():
  return itkFiniteDifferenceFunctionIVF42.New()


def itkFiniteDifferenceFunctionIVF33_New():
  return itkFiniteDifferenceFunctionIVF33.New()


def itkFiniteDifferenceFunctionIVF32_New():
  return itkFiniteDifferenceFunctionIVF32.New()


def itkFiniteDifferenceFunctionIVF23_New():
  return itkFiniteDifferenceFunctionIVF23.New()


def itkFiniteDifferenceFunctionIVF22_New():
  return itkFiniteDifferenceFunctionIVF22.New()


def itkFiniteDifferenceFunctionIF3_New():
  return itkFiniteDifferenceFunctionIF3.New()


def itkFiniteDifferenceFunctionIF2_New():
  return itkFiniteDifferenceFunctionIF2.New()


def itkFiniteDifferenceFunctionIUC3_New():
  return itkFiniteDifferenceFunctionIUC3.New()


def itkFiniteDifferenceFunctionIUC2_New():
  return itkFiniteDifferenceFunctionIUC2.New()


def itkFiniteDifferenceFunctionISS3_New():
  return itkFiniteDifferenceFunctionISS3.New()


def itkFiniteDifferenceFunctionISS2_New():
  return itkFiniteDifferenceFunctionISS2.New()

class itkFiniteDifferenceFunctionICVF22(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionICVF22 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionICVF22
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionICVF22

        Create a new object of the class itkFiniteDifferenceFunctionICVF22 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionICVF22.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionICVF22.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionICVF22.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionICVF22 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF22_swigregister(itkFiniteDifferenceFunctionICVF22)
class itkFiniteDifferenceFunctionICVF23(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionICVF23 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionICVF23
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionICVF23

        Create a new object of the class itkFiniteDifferenceFunctionICVF23 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionICVF23.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionICVF23.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionICVF23.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionICVF23 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF23_swigregister(itkFiniteDifferenceFunctionICVF23)
class itkFiniteDifferenceFunctionICVF32(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionICVF32 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionICVF32
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionICVF32

        Create a new object of the class itkFiniteDifferenceFunctionICVF32 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionICVF32.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionICVF32.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionICVF32.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionICVF32 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF32_swigregister(itkFiniteDifferenceFunctionICVF32)
class itkFiniteDifferenceFunctionICVF33(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionICVF33 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionICVF33
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionICVF33

        Create a new object of the class itkFiniteDifferenceFunctionICVF33 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionICVF33.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionICVF33.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionICVF33.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionICVF33 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF33_swigregister(itkFiniteDifferenceFunctionICVF33)
class itkFiniteDifferenceFunctionICVF42(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionICVF42 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionICVF42
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionICVF42

        Create a new object of the class itkFiniteDifferenceFunctionICVF42 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionICVF42.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionICVF42.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionICVF42.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionICVF42 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF42_swigregister(itkFiniteDifferenceFunctionICVF42)
class itkFiniteDifferenceFunctionICVF43(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionICVF43 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionICVF43
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionICVF43

        Create a new object of the class itkFiniteDifferenceFunctionICVF43 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionICVF43.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionICVF43.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionICVF43.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionICVF43 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionICVF43_swigregister(itkFiniteDifferenceFunctionICVF43)
class itkFiniteDifferenceFunctionIF2(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIF2 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIF2
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIF2

        Create a new object of the class itkFiniteDifferenceFunctionIF2 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIF2.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIF2.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIF2.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIF2 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF2_swigregister(itkFiniteDifferenceFunctionIF2)
class itkFiniteDifferenceFunctionIF3(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIF3 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIF3
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIF3

        Create a new object of the class itkFiniteDifferenceFunctionIF3 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIF3.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIF3.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIF3.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIF3 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIF3_swigregister(itkFiniteDifferenceFunctionIF3)
class itkFiniteDifferenceFunctionISS2(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionISS2 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionISS2
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionISS2

        Create a new object of the class itkFiniteDifferenceFunctionISS2 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionISS2.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionISS2.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionISS2.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionISS2 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS2_swigregister(itkFiniteDifferenceFunctionISS2)
class itkFiniteDifferenceFunctionISS3(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionISS3 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionISS3
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionISS3

        Create a new object of the class itkFiniteDifferenceFunctionISS3 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionISS3.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionISS3.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionISS3.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionISS3 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionISS3_swigregister(itkFiniteDifferenceFunctionISS3)
class itkFiniteDifferenceFunctionIUC2(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIUC2 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIUC2
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIUC2

        Create a new object of the class itkFiniteDifferenceFunctionIUC2 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIUC2.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIUC2.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIUC2.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIUC2 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC2_swigregister(itkFiniteDifferenceFunctionIUC2)
class itkFiniteDifferenceFunctionIUC3(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIUC3 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIUC3
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIUC3

        Create a new object of the class itkFiniteDifferenceFunctionIUC3 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIUC3.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIUC3.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIUC3.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIUC3 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIUC3_swigregister(itkFiniteDifferenceFunctionIUC3)
class itkFiniteDifferenceFunctionIVF22(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIVF22 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIVF22
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIVF22

        Create a new object of the class itkFiniteDifferenceFunctionIVF22 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIVF22.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIVF22.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIVF22.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIVF22 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF22_swigregister(itkFiniteDifferenceFunctionIVF22)
class itkFiniteDifferenceFunctionIVF23(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIVF23 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIVF23
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIVF23

        Create a new object of the class itkFiniteDifferenceFunctionIVF23 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIVF23.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIVF23.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIVF23.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIVF23 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF23_swigregister(itkFiniteDifferenceFunctionIVF23)
class itkFiniteDifferenceFunctionIVF32(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIVF32 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIVF32
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIVF32

        Create a new object of the class itkFiniteDifferenceFunctionIVF32 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIVF32.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIVF32.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIVF32.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIVF32 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF32_swigregister(itkFiniteDifferenceFunctionIVF32)
class itkFiniteDifferenceFunctionIVF33(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIVF33 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIVF33
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIVF33

        Create a new object of the class itkFiniteDifferenceFunctionIVF33 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIVF33.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIVF33.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIVF33.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIVF33 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF33_swigregister(itkFiniteDifferenceFunctionIVF33)
class itkFiniteDifferenceFunctionIVF42(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIVF42 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIVF42
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIVF42

        Create a new object of the class itkFiniteDifferenceFunctionIVF42 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIVF42.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIVF42.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIVF42.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIVF42 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF42_swigregister(itkFiniteDifferenceFunctionIVF42)
class itkFiniteDifferenceFunctionIVF43(ITKCommonBasePython.itkLightObject):
    r"""Proxy of C++ itkFiniteDifferenceFunctionIVF43 class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    InitializeIteration = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_InitializeIteration)
    ComputeUpdate = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_ComputeUpdate)
    SetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_SetRadius)
    GetRadius = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_GetRadius)
    SetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_SetScaleCoefficients)
    GetScaleCoefficients = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_GetScaleCoefficients)
    ComputeNeighborhoodScales = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_ComputeNeighborhoodScales)
    ComputeGlobalTimeStep = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_ComputeGlobalTimeStep)
    GetGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_GetGlobalDataPointer)
    ReleaseGlobalDataPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_ReleaseGlobalDataPointer)
    __swig_destroy__ = _itkFiniteDifferenceFunctionPython.delete_itkFiniteDifferenceFunctionIVF43
    cast = _swig_new_static_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_cast)
    GetPointer = _swig_new_instance_method(_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_GetPointer)

    def New(*args, **kargs):
        """New() -> itkFiniteDifferenceFunctionIVF43

        Create a new object of the class itkFiniteDifferenceFunctionIVF43 and set the input and the parameters if some
        named or non-named arguments are passed to that method.

        New() tries to assign all the non named parameters to the input of the new objects - the
        first non named parameter in the first input, etc.

        The named parameters are used by calling the method with the same name prefixed by 'Set'.

        Ex:

          itkFiniteDifferenceFunctionIVF43.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

          obj = itkFiniteDifferenceFunctionIVF43.New()
          obj.SetInput( 0, reader.GetOutput() )
          obj.SetThreshold( 10 )
        """
        obj = itkFiniteDifferenceFunctionIVF43.__New_orig__()
        import itkTemplate
        itkTemplate.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkFiniteDifferenceFunctionIVF43 in _itkFiniteDifferenceFunctionPython:
_itkFiniteDifferenceFunctionPython.itkFiniteDifferenceFunctionIVF43_swigregister(itkFiniteDifferenceFunctionIVF43)

