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


import collections

from sys import version_info as _version_info
if _version_info < (3, 7, 0):
    raise RuntimeError("Python 3.7 or later required")

from . import _ITKCommonPython


from . import _ITKImageIntensityPython



from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if getattr(globals().get("__spec__"), "parent", None) or __package__ or "." in __name__:
    from . import _itkVectorIndexSelectionCastImageFilterPython
else:
    import _itkVectorIndexSelectionCastImageFilterPython

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

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__)


if _swig_python_version_info[0:2] >= (3, 3):
    import collections.abc
else:
    import collections

import itk.itkInPlaceImageFilterBPython
import itk.itkImageToImageFilterBPython
import itk.ITKCommonBasePython
import itk.itkMatrixPython
import itk.vnl_matrix_fixedPython
import itk.vnl_matrixPython
import itk.stdcomplexPython
import itk.pyBasePython
import itk.vnl_vectorPython
import itk.itkPointPython
import itk.vnl_vector_refPython
import itk.itkFixedArrayPython
import itk.itkVectorPython
import itk.itkCovariantVectorPython
import itk.itkImageToImageFilterCommonPython
import itk.itkImagePython
import itk.itkRGBAPixelPython
import itk.itkRGBPixelPython
import itk.itkOffsetPython
import itk.itkSizePython
import itk.itkIndexPython
import itk.itkImageRegionPython
import itk.itkSymmetricSecondRankTensorPython
import itk.itkVectorImagePython
import itk.itkVariableLengthVectorPython
import itk.itkPhasedArray3DSpecialCoordinatesImagePython
import itk.itkImageSourcePython
import itk.itkImageSourceCommonPython
import itk.itkInPlaceImageFilterAPython
import itk.itkImageToImageFilterAPython

def itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterICVF22IF2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,2 >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,2 >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,2 >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass)

def itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterICVF23IF3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,2 >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,2 >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,2 >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass)

def itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterICVF32IF2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass)

def itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterICVF33IF3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass)

def itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterICVF42IF2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,4 >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,4 >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,4 >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass)

def itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterICVF43IF3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,4 >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,4 >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::CovariantVector< float,4 >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass)

def itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass(itk.itkInPlaceImageFilterAPython.itkInPlaceImageFilterIRGBAUC2IUC2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::RGBAPixel< unsigned char >,unsigned char >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::RGBAPixel< unsigned char >,unsigned char > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::RGBAPixel< unsigned char >,unsigned char > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass)

def itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass(itk.itkInPlaceImageFilterAPython.itkInPlaceImageFilterIRGBAUC3IUC3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::RGBAPixel< unsigned char >,unsigned char >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::RGBAPixel< unsigned char >,unsigned char > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::RGBAPixel< unsigned char >,unsigned char > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass)

def itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterIRGBUC2IUC2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::RGBPixel< unsigned char >,unsigned char >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::RGBPixel< unsigned char >,unsigned char > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::RGBPixel< unsigned char >,unsigned char > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass)

def itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterIRGBUC3IUC3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::RGBPixel< unsigned char >,unsigned char >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::RGBPixel< unsigned char >,unsigned char > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::RGBPixel< unsigned char >,unsigned char > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass)

def itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterIVF22IF2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float,2 >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float,2 >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::Vector< float,2 >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass)

def itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterIVF23IF3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float,2 >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float,2 >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::Vector< float,2 >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass)

def itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterIVF32IF2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::Vector< float >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass)

def itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterIVF33IF3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::Vector< float >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass)

def itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterIVF42IF2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float,4 >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float,4 >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::Vector< float,4 >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass)

def itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterIVF43IF3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float,4 >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::Vector< float,4 >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::Vector< float,4 >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass)

def itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterVIF2IF2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< float >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< float >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< float >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass)

def itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterVIF3IF3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< float >,float >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< float >,float > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< float >,float > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass)

def itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterVISS2ISS2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< short >,short >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< short >,short > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< short >,short > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass)

def itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterVISS3ISS3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< short >,short >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< short >,short > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< short >,short > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass)

def itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass.New()

class itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterVIUC2IUC2):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< unsigned char >,unsigned char >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< unsigned char >,unsigned char > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< unsigned char >,unsigned char > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass 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:

          itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass)

def itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass_New():
    return itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass.New()

class itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass(itk.itkInPlaceImageFilterBPython.itkInPlaceImageFilterVIUC3IUC3):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass_Clone(self)

    def GetFunctor(self, *args):
        r"""
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< unsigned char >,unsigned char >
        GetFunctor(self) -> itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< unsigned char >,unsigned char > const &
        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass_GetFunctor(self, *args)

    def SetFunctor(self, functor):
        r"""
        SetFunctor(self, functor)

        Parameters
        ----------
        functor: itk::Functor::VectorIndexSelectionCast< itk::VariableLengthVector< unsigned char >,unsigned char > const &

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass_SetFunctor(self, functor)
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass 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:

          itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass_swigregister(itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass)

def itkVectorIndexSelectionCastImageFilterICVF22IF2_New():
    return itkVectorIndexSelectionCastImageFilterICVF22IF2.New()

class itkVectorIndexSelectionCastImageFilterICVF22IF2(itkVectorIndexSelectionCastImageFilterICVF22IF2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF22IF2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF22IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF22IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF22IF2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF22IF2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF22IF2 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:

          itkVectorIndexSelectionCastImageFilterICVF22IF2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF22IF2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF22IF2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF22IF2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF22IF2_swigregister(itkVectorIndexSelectionCastImageFilterICVF22IF2)

def itkVectorIndexSelectionCastImageFilterICVF23IF3_New():
    return itkVectorIndexSelectionCastImageFilterICVF23IF3.New()

class itkVectorIndexSelectionCastImageFilterICVF23IF3(itkVectorIndexSelectionCastImageFilterICVF23IF3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF23IF3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF23IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF23IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF23IF3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF23IF3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF23IF3 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:

          itkVectorIndexSelectionCastImageFilterICVF23IF3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF23IF3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF23IF3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF23IF3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF23IF3_swigregister(itkVectorIndexSelectionCastImageFilterICVF23IF3)

def itkVectorIndexSelectionCastImageFilterICVF32IF2_New():
    return itkVectorIndexSelectionCastImageFilterICVF32IF2.New()

class itkVectorIndexSelectionCastImageFilterICVF32IF2(itkVectorIndexSelectionCastImageFilterICVF32IF2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF32IF2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF32IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF32IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF32IF2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF32IF2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF32IF2 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:

          itkVectorIndexSelectionCastImageFilterICVF32IF2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF32IF2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF32IF2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF32IF2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF32IF2_swigregister(itkVectorIndexSelectionCastImageFilterICVF32IF2)

def itkVectorIndexSelectionCastImageFilterICVF33IF3_New():
    return itkVectorIndexSelectionCastImageFilterICVF33IF3.New()

class itkVectorIndexSelectionCastImageFilterICVF33IF3(itkVectorIndexSelectionCastImageFilterICVF33IF3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF33IF3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF33IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF33IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF33IF3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF33IF3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF33IF3 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:

          itkVectorIndexSelectionCastImageFilterICVF33IF3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF33IF3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF33IF3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF33IF3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF33IF3_swigregister(itkVectorIndexSelectionCastImageFilterICVF33IF3)

def itkVectorIndexSelectionCastImageFilterICVF42IF2_New():
    return itkVectorIndexSelectionCastImageFilterICVF42IF2.New()

class itkVectorIndexSelectionCastImageFilterICVF42IF2(itkVectorIndexSelectionCastImageFilterICVF42IF2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF42IF2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF42IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF42IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF42IF2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF42IF2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF42IF2 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:

          itkVectorIndexSelectionCastImageFilterICVF42IF2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF42IF2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF42IF2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF42IF2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF42IF2_swigregister(itkVectorIndexSelectionCastImageFilterICVF42IF2)

def itkVectorIndexSelectionCastImageFilterICVF43IF3_New():
    return itkVectorIndexSelectionCastImageFilterICVF43IF3.New()

class itkVectorIndexSelectionCastImageFilterICVF43IF3(itkVectorIndexSelectionCastImageFilterICVF43IF3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterICVF43IF3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterICVF43IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterICVF43IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterICVF43IF3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterICVF43IF3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterICVF43IF3 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:

          itkVectorIndexSelectionCastImageFilterICVF43IF3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterICVF43IF3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterICVF43IF3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterICVF43IF3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterICVF43IF3_swigregister(itkVectorIndexSelectionCastImageFilterICVF43IF3)

def itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_New():
    return itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2.New()

class itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2(itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2 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:

          itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2_swigregister(itkVectorIndexSelectionCastImageFilterIRGBAUC2IUC2)

def itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_New():
    return itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3.New()

class itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3(itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3 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:

          itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3_swigregister(itkVectorIndexSelectionCastImageFilterIRGBAUC3IUC3)

def itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_New():
    return itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2.New()

class itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2(itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2 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:

          itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2_swigregister(itkVectorIndexSelectionCastImageFilterIRGBUC2IUC2)

def itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_New():
    return itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3.New()

class itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3(itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3 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:

          itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3_swigregister(itkVectorIndexSelectionCastImageFilterIRGBUC3IUC3)

def itkVectorIndexSelectionCastImageFilterIVF22IF2_New():
    return itkVectorIndexSelectionCastImageFilterIVF22IF2.New()

class itkVectorIndexSelectionCastImageFilterIVF22IF2(itkVectorIndexSelectionCastImageFilterIVF22IF2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF22IF2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF22IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF22IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF22IF2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF22IF2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF22IF2 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:

          itkVectorIndexSelectionCastImageFilterIVF22IF2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF22IF2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF22IF2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF22IF2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF22IF2_swigregister(itkVectorIndexSelectionCastImageFilterIVF22IF2)

def itkVectorIndexSelectionCastImageFilterIVF23IF3_New():
    return itkVectorIndexSelectionCastImageFilterIVF23IF3.New()

class itkVectorIndexSelectionCastImageFilterIVF23IF3(itkVectorIndexSelectionCastImageFilterIVF23IF3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF23IF3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF23IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF23IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF23IF3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF23IF3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF23IF3 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:

          itkVectorIndexSelectionCastImageFilterIVF23IF3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF23IF3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF23IF3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF23IF3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF23IF3_swigregister(itkVectorIndexSelectionCastImageFilterIVF23IF3)

def itkVectorIndexSelectionCastImageFilterIVF32IF2_New():
    return itkVectorIndexSelectionCastImageFilterIVF32IF2.New()

class itkVectorIndexSelectionCastImageFilterIVF32IF2(itkVectorIndexSelectionCastImageFilterIVF32IF2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF32IF2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF32IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF32IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF32IF2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF32IF2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF32IF2 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:

          itkVectorIndexSelectionCastImageFilterIVF32IF2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF32IF2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF32IF2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF32IF2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF32IF2_swigregister(itkVectorIndexSelectionCastImageFilterIVF32IF2)

def itkVectorIndexSelectionCastImageFilterIVF33IF3_New():
    return itkVectorIndexSelectionCastImageFilterIVF33IF3.New()

class itkVectorIndexSelectionCastImageFilterIVF33IF3(itkVectorIndexSelectionCastImageFilterIVF33IF3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF33IF3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF33IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF33IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF33IF3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF33IF3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF33IF3 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:

          itkVectorIndexSelectionCastImageFilterIVF33IF3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF33IF3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF33IF3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF33IF3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF33IF3_swigregister(itkVectorIndexSelectionCastImageFilterIVF33IF3)

def itkVectorIndexSelectionCastImageFilterIVF42IF2_New():
    return itkVectorIndexSelectionCastImageFilterIVF42IF2.New()

class itkVectorIndexSelectionCastImageFilterIVF42IF2(itkVectorIndexSelectionCastImageFilterIVF42IF2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF42IF2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF42IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF42IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF42IF2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF42IF2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF42IF2 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:

          itkVectorIndexSelectionCastImageFilterIVF42IF2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF42IF2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF42IF2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF42IF2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF42IF2_swigregister(itkVectorIndexSelectionCastImageFilterIVF42IF2)

def itkVectorIndexSelectionCastImageFilterIVF43IF3_New():
    return itkVectorIndexSelectionCastImageFilterIVF43IF3.New()

class itkVectorIndexSelectionCastImageFilterIVF43IF3(itkVectorIndexSelectionCastImageFilterIVF43IF3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterIVF43IF3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterIVF43IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterIVF43IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterIVF43IF3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterIVF43IF3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterIVF43IF3 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:

          itkVectorIndexSelectionCastImageFilterIVF43IF3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterIVF43IF3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterIVF43IF3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterIVF43IF3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterIVF43IF3_swigregister(itkVectorIndexSelectionCastImageFilterIVF43IF3)

def itkVectorIndexSelectionCastImageFilterVIF2IF2_New():
    return itkVectorIndexSelectionCastImageFilterVIF2IF2.New()

class itkVectorIndexSelectionCastImageFilterVIF2IF2(itkVectorIndexSelectionCastImageFilterVIF2IF2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVIF2IF2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVIF2IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVIF2IF2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVIF2IF2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVIF2IF2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVIF2IF2 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:

          itkVectorIndexSelectionCastImageFilterVIF2IF2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVIF2IF2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVIF2IF2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVIF2IF2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF2IF2_swigregister(itkVectorIndexSelectionCastImageFilterVIF2IF2)

def itkVectorIndexSelectionCastImageFilterVIF3IF3_New():
    return itkVectorIndexSelectionCastImageFilterVIF3IF3.New()

class itkVectorIndexSelectionCastImageFilterVIF3IF3(itkVectorIndexSelectionCastImageFilterVIF3IF3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVIF3IF3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVIF3IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVIF3IF3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVIF3IF3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVIF3IF3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVIF3IF3 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:

          itkVectorIndexSelectionCastImageFilterVIF3IF3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVIF3IF3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVIF3IF3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVIF3IF3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIF3IF3_swigregister(itkVectorIndexSelectionCastImageFilterVIF3IF3)

def itkVectorIndexSelectionCastImageFilterVISS2ISS2_New():
    return itkVectorIndexSelectionCastImageFilterVISS2ISS2.New()

class itkVectorIndexSelectionCastImageFilterVISS2ISS2(itkVectorIndexSelectionCastImageFilterVISS2ISS2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVISS2ISS2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVISS2ISS2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVISS2ISS2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVISS2ISS2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVISS2ISS2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVISS2ISS2 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:

          itkVectorIndexSelectionCastImageFilterVISS2ISS2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVISS2ISS2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVISS2ISS2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVISS2ISS2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS2ISS2_swigregister(itkVectorIndexSelectionCastImageFilterVISS2ISS2)

def itkVectorIndexSelectionCastImageFilterVISS3ISS3_New():
    return itkVectorIndexSelectionCastImageFilterVISS3ISS3.New()

class itkVectorIndexSelectionCastImageFilterVISS3ISS3(itkVectorIndexSelectionCastImageFilterVISS3ISS3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVISS3ISS3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVISS3ISS3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVISS3ISS3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVISS3ISS3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVISS3ISS3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVISS3ISS3 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:

          itkVectorIndexSelectionCastImageFilterVISS3ISS3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVISS3ISS3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVISS3ISS3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVISS3ISS3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVISS3ISS3_swigregister(itkVectorIndexSelectionCastImageFilterVISS3ISS3)

def itkVectorIndexSelectionCastImageFilterVIUC2IUC2_New():
    return itkVectorIndexSelectionCastImageFilterVIUC2IUC2.New()

class itkVectorIndexSelectionCastImageFilterVIUC2IUC2(itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVIUC2IUC2 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVIUC2IUC2

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVIUC2IUC2

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVIUC2IUC2 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:

          itkVectorIndexSelectionCastImageFilterVIUC2IUC2.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVIUC2IUC2.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVIUC2IUC2.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVIUC2IUC2 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC2IUC2_swigregister(itkVectorIndexSelectionCastImageFilterVIUC2IUC2)

def itkVectorIndexSelectionCastImageFilterVIUC3IUC3_New():
    return itkVectorIndexSelectionCastImageFilterVIUC3IUC3.New()

class itkVectorIndexSelectionCastImageFilterVIUC3IUC3(itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Superclass):
    r"""Proxy of C++ itkVectorIndexSelectionCastImageFilterVIUC3IUC3 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")
    __repr__ = _swig_repr

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Pointer"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_Clone(self)

    def SetIndex(self, i):
        r"""
        SetIndex(self, i)

        Parameters
        ----------
        i: unsigned int

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_SetIndex(self, i)

    def GetIndex(self):
        r"""GetIndex(self) -> unsigned int"""
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_GetIndex(self)
    InputHasNumericTraitsCheck = _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_InputHasNumericTraitsCheck
    
    __swig_destroy__ = _itkVectorIndexSelectionCastImageFilterPython.delete_itkVectorIndexSelectionCastImageFilterVIUC3IUC3

    @staticmethod
    def cast(obj):
        r"""
        cast(obj) -> itkVectorIndexSelectionCastImageFilterVIUC3IUC3

        Parameters
        ----------
        obj: itkLightObject *

        """
        return _itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_cast(obj)

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

        Create a new object of the class itkVectorIndexSelectionCastImageFilterVIUC3IUC3 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:

          itkVectorIndexSelectionCastImageFilterVIUC3IUC3.New(reader, threshold=10)

        is (most of the time) equivalent to:

          obj = itkVectorIndexSelectionCastImageFilterVIUC3IUC3.New()
          obj.SetInput(0, reader.GetOutput())
          obj.SetThreshold(10)
        """
        obj = itkVectorIndexSelectionCastImageFilterVIUC3IUC3.__New_orig__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkVectorIndexSelectionCastImageFilterVIUC3IUC3 in _itkVectorIndexSelectionCastImageFilterPython:
_itkVectorIndexSelectionCastImageFilterPython.itkVectorIndexSelectionCastImageFilterVIUC3IUC3_swigregister(itkVectorIndexSelectionCastImageFilterVIUC3IUC3)

from itk.support import helpers
import itk.support.types as itkt
from typing import Sequence, Tuple, Union

@helpers.accept_array_like_xarray_torch
def vector_index_selection_cast_image_filter(*args: itkt.ImageLike,  index: int=..., functor=...,**kwargs)-> itkt.ImageSourceReturn:
    """Functional interface for VectorIndexSelectionCastImageFilter"""
    import itk

    kwarg_typehints = { 'index':index,'functor':functor }
    specified_kwarg_typehints = { k:v for (k,v) in kwarg_typehints.items() if kwarg_typehints[k] is not ... }
    kwargs.update(specified_kwarg_typehints)


    instance = itk.VectorIndexSelectionCastImageFilter.New(*args, **kwargs)

    return instance.__internal_call__()

def vector_index_selection_cast_image_filter_init_docstring():
    import itk
    from itk.support import template_class

    filter_class = itk.ITKImageIntensity.VectorIndexSelectionCastImageFilter
    vector_index_selection_cast_image_filter.process_object = filter_class
    is_template = isinstance(filter_class, template_class.itkTemplate)
    if is_template:
        filter_object = filter_class.values()[0]
    else:
        filter_object = filter_class

    vector_index_selection_cast_image_filter.__doc__ = filter_object.__doc__

from itk.support import helpers
import itk.support.types as itkt
from typing import Sequence, Tuple, Union

@helpers.accept_array_like_xarray_torch
def unary_functor_image_filter(*args: itkt.ImageLike,  functor=...,**kwargs)-> itkt.ImageSourceReturn:
    """Functional interface for UnaryFunctorImageFilter"""
    import itk

    kwarg_typehints = { 'functor':functor }
    specified_kwarg_typehints = { k:v for (k,v) in kwarg_typehints.items() if kwarg_typehints[k] is not ... }
    kwargs.update(specified_kwarg_typehints)


    instance = itk.UnaryFunctorImageFilter.New(*args, **kwargs)

    return instance.__internal_call__()

def unary_functor_image_filter_init_docstring():
    import itk
    from itk.support import template_class

    filter_class = itk.ITKImageIntensity.UnaryFunctorImageFilter
    unary_functor_image_filter.process_object = filter_class
    is_template = isinstance(filter_class, template_class.itkTemplate)
    if is_template:
        filter_object = filter_class.values()[0]
    else:
        filter_object = filter_class

    unary_functor_image_filter.__doc__ = filter_object.__doc__



