# 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.

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 _ITKCommonBasePython
else:
    import _ITKCommonBasePython

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

_swig_new_instance_method = _ITKCommonBasePython.SWIG_PyInstanceMethod_New
_swig_new_static_method = _ITKCommonBasePython.SWIG_PyStaticMethod_New

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


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


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


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


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


import pyBasePython

def itkMersenneTwisterRandomVariateGenerator_New():
  return itkMersenneTwisterRandomVariateGenerator.New()


def itkRandomVariateGeneratorBase_New():
  return itkRandomVariateGeneratorBase.New()


def itkImageRegionSplitterDirection_New():
  return itkImageRegionSplitterDirection.New()


def itkImageRegionSplitterBase_New():
  return itkImageRegionSplitterBase.New()


def itkMultiThreader_New():
  return itkMultiThreader.New()


def itkMetaDataObjectBase_New():
  return itkMetaDataObjectBase.New()


def itkRealTimeClock_New():
  return itkRealTimeClock.New()


def itkThreadPool_New():
  return itkThreadPool.New()


def itkVersion_New():
  return itkVersion.New()


def itkOutputWindow_New():
  return itkOutputWindow.New()


def itkObjectFactoryBase_New():
  return itkObjectFactoryBase.New()


def itkDynamicLoader_New():
  return itkDynamicLoader.New()


def itkDirectory_New():
  return itkDirectory.New()


def itkCommand_New():
  return itkCommand.New()


def itkProcessObject_New():
  return itkProcessObject.New()


def itkLightProcessObject_New():
  return itkLightProcessObject.New()


def itkDataObject_New():
  return itkDataObject.New()


def itkObject_New():
  return itkObject.New()


def itkLightObject_New():
  return itkLightObject.New()

class listitkLightObject(object):
    r"""Proxy of C++ std::list< itkLightObject_Pointer > class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    iterator = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_iterator)
    def __iter__(self):
        return self.iterator()
    __nonzero__ = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject___nonzero__)
    __bool__ = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject___bool__)
    __len__ = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject___len__)
    __getslice__ = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject___getslice__)
    __setslice__ = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject___setslice__)
    __delslice__ = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject___delslice__)
    __delitem__ = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject___delitem__)
    __getitem__ = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject___getitem__)
    __setitem__ = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject___setitem__)
    pop = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_pop)
    append = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_append)
    empty = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_empty)
    size = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_size)
    swap = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_swap)
    begin = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_begin)
    end = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_end)
    rbegin = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_rbegin)
    rend = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_rend)
    clear = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_clear)
    get_allocator = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_get_allocator)
    pop_back = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_pop_back)
    erase = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_erase)

    def __init__(self, *args):
        r"""
        __init__(listitkLightObject self) -> listitkLightObject
        __init__(listitkLightObject self, listitkLightObject other) -> listitkLightObject
        __init__(listitkLightObject self, std::list< itkLightObject_Pointer >::size_type size) -> listitkLightObject
        __init__(listitkLightObject self, std::list< itkLightObject_Pointer >::size_type size, std::list< itkLightObject_Pointer >::value_type const & value) -> listitkLightObject
        """
        _ITKCommonBasePython.listitkLightObject_swiginit(self, _ITKCommonBasePython.new_listitkLightObject(*args))
    push_back = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_push_back)
    front = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_front)
    back = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_back)
    assign = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_assign)
    resize = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_resize)
    insert = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_insert)
    pop_front = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_pop_front)
    push_front = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_push_front)
    reverse = _swig_new_instance_method(_ITKCommonBasePython.listitkLightObject_reverse)
    __swig_destroy__ = _ITKCommonBasePython.delete_listitkLightObject

# Register listitkLightObject in _ITKCommonBasePython:
_ITKCommonBasePython.listitkLightObject_swigregister(listitkLightObject)
class vectoritkDataObject(object):
    r"""Proxy of C++ std::vector< itkDataObject_Pointer > class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    iterator = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_iterator)
    def __iter__(self):
        return self.iterator()
    __nonzero__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject___nonzero__)
    __bool__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject___bool__)
    __len__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject___len__)
    __getslice__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject___getslice__)
    __setslice__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject___setslice__)
    __delslice__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject___delslice__)
    __delitem__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject___delitem__)
    __getitem__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject___getitem__)
    __setitem__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject___setitem__)
    pop = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_pop)
    append = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_append)
    empty = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_empty)
    size = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_size)
    swap = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_swap)
    begin = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_begin)
    end = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_end)
    rbegin = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_rbegin)
    rend = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_rend)
    clear = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_clear)
    get_allocator = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_get_allocator)
    pop_back = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_pop_back)
    erase = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_erase)

    def __init__(self, *args):
        r"""
        __init__(vectoritkDataObject self) -> vectoritkDataObject
        __init__(vectoritkDataObject self, vectoritkDataObject other) -> vectoritkDataObject
        __init__(vectoritkDataObject self, std::vector< itkDataObject_Pointer >::size_type size) -> vectoritkDataObject
        __init__(vectoritkDataObject self, std::vector< itkDataObject_Pointer >::size_type size, std::vector< itkDataObject_Pointer >::value_type const & value) -> vectoritkDataObject
        """
        _ITKCommonBasePython.vectoritkDataObject_swiginit(self, _ITKCommonBasePython.new_vectoritkDataObject(*args))
    push_back = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_push_back)
    front = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_front)
    back = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_back)
    assign = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_assign)
    resize = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_resize)
    insert = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_insert)
    reserve = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_reserve)
    capacity = _swig_new_instance_method(_ITKCommonBasePython.vectoritkDataObject_capacity)
    __swig_destroy__ = _ITKCommonBasePython.delete_vectoritkDataObject

# Register vectoritkDataObject in _ITKCommonBasePython:
_ITKCommonBasePython.vectoritkDataObject_swigregister(vectoritkDataObject)
class listitkObjectFactoryBase(object):
    r"""Proxy of C++ std::list< itkObjectFactoryBase * > class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    iterator = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_iterator)
    def __iter__(self):
        return self.iterator()
    __nonzero__ = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase___nonzero__)
    __bool__ = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase___bool__)
    __len__ = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase___len__)
    __getslice__ = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase___getslice__)
    __setslice__ = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase___setslice__)
    __delslice__ = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase___delslice__)
    __delitem__ = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase___delitem__)
    __getitem__ = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase___getitem__)
    __setitem__ = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase___setitem__)
    pop = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_pop)
    append = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_append)
    empty = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_empty)
    size = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_size)
    swap = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_swap)
    begin = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_begin)
    end = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_end)
    rbegin = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_rbegin)
    rend = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_rend)
    clear = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_clear)
    get_allocator = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_get_allocator)
    pop_back = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_pop_back)
    erase = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_erase)

    def __init__(self, *args):
        r"""
        __init__(listitkObjectFactoryBase self) -> listitkObjectFactoryBase
        __init__(listitkObjectFactoryBase self, listitkObjectFactoryBase other) -> listitkObjectFactoryBase
        __init__(listitkObjectFactoryBase self, std::list< itkObjectFactoryBase * >::size_type size) -> listitkObjectFactoryBase
        __init__(listitkObjectFactoryBase self, std::list< itkObjectFactoryBase * >::size_type size, itkObjectFactoryBase value) -> listitkObjectFactoryBase
        """
        _ITKCommonBasePython.listitkObjectFactoryBase_swiginit(self, _ITKCommonBasePython.new_listitkObjectFactoryBase(*args))
    push_back = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_push_back)
    front = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_front)
    back = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_back)
    assign = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_assign)
    resize = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_resize)
    insert = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_insert)
    pop_front = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_pop_front)
    push_front = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_push_front)
    remove = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_remove)
    unique = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_unique)
    reverse = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_reverse)
    sort = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_sort)
    merge = _swig_new_instance_method(_ITKCommonBasePython.listitkObjectFactoryBase_merge)
    __swig_destroy__ = _ITKCommonBasePython.delete_listitkObjectFactoryBase

# Register listitkObjectFactoryBase in _ITKCommonBasePython:
_ITKCommonBasePython.listitkObjectFactoryBase_swigregister(listitkObjectFactoryBase)
class vectoritkMetaDataDictionary(object):
    r"""Proxy of C++ std::vector< itkMetaDataDictionary * > class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    iterator = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_iterator)
    def __iter__(self):
        return self.iterator()
    __nonzero__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary___nonzero__)
    __bool__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary___bool__)
    __len__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary___len__)
    __getslice__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary___getslice__)
    __setslice__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary___setslice__)
    __delslice__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary___delslice__)
    __delitem__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary___delitem__)
    __getitem__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary___getitem__)
    __setitem__ = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary___setitem__)
    pop = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_pop)
    append = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_append)
    empty = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_empty)
    size = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_size)
    swap = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_swap)
    begin = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_begin)
    end = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_end)
    rbegin = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_rbegin)
    rend = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_rend)
    clear = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_clear)
    get_allocator = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_get_allocator)
    pop_back = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_pop_back)
    erase = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_erase)

    def __init__(self, *args):
        r"""
        __init__(vectoritkMetaDataDictionary self) -> vectoritkMetaDataDictionary
        __init__(vectoritkMetaDataDictionary self, vectoritkMetaDataDictionary other) -> vectoritkMetaDataDictionary
        __init__(vectoritkMetaDataDictionary self, std::vector< itkMetaDataDictionary * >::size_type size) -> vectoritkMetaDataDictionary
        __init__(vectoritkMetaDataDictionary self, std::vector< itkMetaDataDictionary * >::size_type size, itkMetaDataDictionary value) -> vectoritkMetaDataDictionary
        """
        _ITKCommonBasePython.vectoritkMetaDataDictionary_swiginit(self, _ITKCommonBasePython.new_vectoritkMetaDataDictionary(*args))
    push_back = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_push_back)
    front = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_front)
    back = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_back)
    assign = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_assign)
    resize = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_resize)
    insert = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_insert)
    reserve = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_reserve)
    capacity = _swig_new_instance_method(_ITKCommonBasePython.vectoritkMetaDataDictionary_capacity)
    __swig_destroy__ = _ITKCommonBasePython.delete_vectoritkMetaDataDictionary

# Register vectoritkMetaDataDictionary in _ITKCommonBasePython:
_ITKCommonBasePython.vectoritkMetaDataDictionary_swigregister(vectoritkMetaDataDictionary)
class itkDataObjectConstIterator(object):
    r"""Proxy of C++ itkDataObjectConstIterator class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkDataObjectConstIterator self) -> itkDataObjectConstIterator
        __init__(itkDataObjectConstIterator self, itkDataObjectConstIterator iter) -> itkDataObjectConstIterator
        """
        _ITKCommonBasePython.itkDataObjectConstIterator_swiginit(self, _ITKCommonBasePython.new_itkDataObjectConstIterator(*args))
    GetDataObject = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectConstIterator_GetDataObject)
    GetName = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectConstIterator_GetName)
    __eq__ = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectConstIterator___eq__)
    __ne__ = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectConstIterator___ne__)
    GoToBegin = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectConstIterator_GoToBegin)
    IsAtEnd = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectConstIterator_IsAtEnd)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkDataObjectConstIterator

# Register itkDataObjectConstIterator in _ITKCommonBasePython:
_ITKCommonBasePython.itkDataObjectConstIterator_swigregister(itkDataObjectConstIterator)
class itkDataObjectIterator(object):
    r"""Proxy of C++ itkDataObjectIterator class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkDataObjectIterator self) -> itkDataObjectIterator
        __init__(itkDataObjectIterator self, itkDataObjectIterator iter) -> itkDataObjectIterator
        """
        _ITKCommonBasePython.itkDataObjectIterator_swiginit(self, _ITKCommonBasePython.new_itkDataObjectIterator(*args))
    GetDataObject = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectIterator_GetDataObject)
    GetName = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectIterator_GetName)
    __eq__ = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectIterator___eq__)
    __ne__ = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectIterator___ne__)
    GoToBegin = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectIterator_GoToBegin)
    IsAtEnd = _swig_new_instance_method(_ITKCommonBasePython.itkDataObjectIterator_IsAtEnd)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkDataObjectIterator

# Register itkDataObjectIterator in _ITKCommonBasePython:
_ITKCommonBasePython.itkDataObjectIterator_swigregister(itkDataObjectIterator)
class itkEventObject(object):
    r"""Proxy of C++ itkEventObject class."""

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _ITKCommonBasePython.delete_itkEventObject
    MakeObject = _swig_new_instance_method(_ITKCommonBasePython.itkEventObject_MakeObject)
    Print = _swig_new_instance_method(_ITKCommonBasePython.itkEventObject_Print)
    GetEventName = _swig_new_instance_method(_ITKCommonBasePython.itkEventObject_GetEventName)
    CheckEvent = _swig_new_instance_method(_ITKCommonBasePython.itkEventObject_CheckEvent)

# Register itkEventObject in _ITKCommonBasePython:
_ITKCommonBasePython.itkEventObject_swigregister(itkEventObject)
class itkIndent(object):
    r"""Proxy of C++ itkIndent class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    New = _swig_new_static_method(_ITKCommonBasePython.itkIndent_New)
    GetNameOfClass = _swig_new_static_method(_ITKCommonBasePython.itkIndent_GetNameOfClass)
    GetNextIndent = _swig_new_instance_method(_ITKCommonBasePython.itkIndent_GetNextIndent)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkIndent

    def __init__(self, *args):
        r"""
        __init__(itkIndent self, int ind=0) -> itkIndent
        __init__(itkIndent self, itkIndent arg0) -> itkIndent
        """
        _ITKCommonBasePython.itkIndent_swiginit(self, _ITKCommonBasePython.new_itkIndent(*args))

# Register itkIndent in _ITKCommonBasePython:
_ITKCommonBasePython.itkIndent_swigregister(itkIndent)
class itkInputDataObjectConstIterator(itkDataObjectConstIterator):
    r"""Proxy of C++ itkInputDataObjectConstIterator class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    GetInput = _swig_new_instance_method(_ITKCommonBasePython.itkInputDataObjectConstIterator_GetInput)

    def __init__(self, *args):
        r"""
        __init__(itkInputDataObjectConstIterator self, itkProcessObject process) -> itkInputDataObjectConstIterator
        __init__(itkInputDataObjectConstIterator self, itkInputDataObjectConstIterator arg0) -> itkInputDataObjectConstIterator
        """
        _ITKCommonBasePython.itkInputDataObjectConstIterator_swiginit(self, _ITKCommonBasePython.new_itkInputDataObjectConstIterator(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkInputDataObjectConstIterator

# Register itkInputDataObjectConstIterator in _ITKCommonBasePython:
_ITKCommonBasePython.itkInputDataObjectConstIterator_swigregister(itkInputDataObjectConstIterator)
class itkInputDataObjectIterator(itkDataObjectIterator):
    r"""Proxy of C++ itkInputDataObjectIterator class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    GetInput = _swig_new_instance_method(_ITKCommonBasePython.itkInputDataObjectIterator_GetInput)

    def __init__(self, *args):
        r"""
        __init__(itkInputDataObjectIterator self, itkProcessObject process) -> itkInputDataObjectIterator
        __init__(itkInputDataObjectIterator self, itkInputDataObjectIterator arg0) -> itkInputDataObjectIterator
        """
        _ITKCommonBasePython.itkInputDataObjectIterator_swiginit(self, _ITKCommonBasePython.new_itkInputDataObjectIterator(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkInputDataObjectIterator

# Register itkInputDataObjectIterator in _ITKCommonBasePython:
_ITKCommonBasePython.itkInputDataObjectIterator_swigregister(itkInputDataObjectIterator)
class itkLightObject(object):
    r"""Proxy of C++ itkLightObject 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkLightObject___New_orig__)
    CreateAnother = _swig_new_instance_method(_ITKCommonBasePython.itkLightObject_CreateAnother)
    Clone = _swig_new_instance_method(_ITKCommonBasePython.itkLightObject_Clone)
    GetNameOfClass = _swig_new_instance_method(_ITKCommonBasePython.itkLightObject_GetNameOfClass)
    Print = _swig_new_instance_method(_ITKCommonBasePython.itkLightObject_Print)
    BreakOnError = _swig_new_static_method(_ITKCommonBasePython.itkLightObject_BreakOnError)
    GetReferenceCount = _swig_new_instance_method(_ITKCommonBasePython.itkLightObject_GetReferenceCount)
    __str__ = _swig_new_instance_method(_ITKCommonBasePython.itkLightObject___str__)
    __eq__ = _swig_new_instance_method(_ITKCommonBasePython.itkLightObject___eq__)
    __hash__ = _swig_new_instance_method(_ITKCommonBasePython.itkLightObject___hash__)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkLightObject
    cast = _swig_new_static_method(_ITKCommonBasePython.itkLightObject_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkLightObject_GetPointer)

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

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

          itkLightObject.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkLightObject in _ITKCommonBasePython:
_ITKCommonBasePython.itkLightObject_swigregister(itkLightObject)
class itkMetaDataDictionary(object):
    r"""Proxy of C++ itkMetaDataDictionary class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Print = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataDictionary_Print)

    def __init__(self, *args):
        r"""
        __init__(itkMetaDataDictionary self) -> itkMetaDataDictionary
        __init__(itkMetaDataDictionary self, itkMetaDataDictionary arg0) -> itkMetaDataDictionary
        """
        _ITKCommonBasePython.itkMetaDataDictionary_swiginit(self, _ITKCommonBasePython.new_itkMetaDataDictionary(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkMetaDataDictionary
    GetKeys = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataDictionary_GetKeys)
    Get = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataDictionary_Get)
    Set = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataDictionary_Set)
    HasKey = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataDictionary_HasKey)
    Erase = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataDictionary_Erase)
    Clear = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataDictionary_Clear)
    __str__ = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataDictionary___str__)

    def __setitem__(self,key,item):
        import itk
        if isinstance(item, str):
            object = itk.MetaDataObject.S.New()
        elif isinstance(item, int):
            object = itk.MetaDataObject.SI.New()
        elif isinstance( item, float):
            object = itk.MetaDataObject.F.New()
        elif isinstance( item, bool):
            object = itk.MetaDataObject.B.New()
        else:
            object = None
        if object != None:
            object.SetMetaDataObjectValue(item)
            self.Set(key, object)
    def __getitem__(self,key):
        import itk
        obj = self.Get(key)
        return itk.down_cast(obj).GetMetaDataObjectValue()
    def __len__(self):
        return self.GetKeys().size()
    def __iter__(self):
        keys = self.GetKeys()
        for key in keys:
            yield self.Get(key)


# Register itkMetaDataDictionary in _ITKCommonBasePython:
_ITKCommonBasePython.itkMetaDataDictionary_swigregister(itkMetaDataDictionary)
class itkMetaDataObjectBase(itkLightObject):
    r"""Proxy of C++ itkMetaDataObjectBase 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
    GetMetaDataObjectTypeName = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataObjectBase_GetMetaDataObjectTypeName)
    GetMetaDataObjectTypeInfo = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataObjectBase_GetMetaDataObjectTypeInfo)
    Print = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataObjectBase_Print)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkMetaDataObjectBase
    cast = _swig_new_static_method(_ITKCommonBasePython.itkMetaDataObjectBase_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkMetaDataObjectBase_GetPointer)

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

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

          itkMetaDataObjectBase.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkMetaDataObjectBase in _ITKCommonBasePython:
_ITKCommonBasePython.itkMetaDataObjectBase_swigregister(itkMetaDataObjectBase)
class itkNoEvent(itkEventObject):
    r"""Proxy of C++ itkNoEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkNoEvent self) -> itkNoEvent
        __init__(itkNoEvent self, itkNoEvent s) -> itkNoEvent
        """
        _ITKCommonBasePython.itkNoEvent_swiginit(self, _ITKCommonBasePython.new_itkNoEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkNoEvent

# Register itkNoEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkNoEvent_swigregister(itkNoEvent)
class itkObject(itkLightObject):
    r"""Proxy of C++ itkObject 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkObject___New_orig__)
    DebugOn = _swig_new_instance_method(_ITKCommonBasePython.itkObject_DebugOn)
    DebugOff = _swig_new_instance_method(_ITKCommonBasePython.itkObject_DebugOff)
    GetDebug = _swig_new_instance_method(_ITKCommonBasePython.itkObject_GetDebug)
    SetDebug = _swig_new_instance_method(_ITKCommonBasePython.itkObject_SetDebug)
    GetMTime = _swig_new_instance_method(_ITKCommonBasePython.itkObject_GetMTime)
    GetTimeStamp = _swig_new_instance_method(_ITKCommonBasePython.itkObject_GetTimeStamp)
    Modified = _swig_new_instance_method(_ITKCommonBasePython.itkObject_Modified)
    SetGlobalWarningDisplay = _swig_new_static_method(_ITKCommonBasePython.itkObject_SetGlobalWarningDisplay)
    GetGlobalWarningDisplay = _swig_new_static_method(_ITKCommonBasePython.itkObject_GetGlobalWarningDisplay)
    GlobalWarningDisplayOn = _swig_new_static_method(_ITKCommonBasePython.itkObject_GlobalWarningDisplayOn)
    GlobalWarningDisplayOff = _swig_new_static_method(_ITKCommonBasePython.itkObject_GlobalWarningDisplayOff)

    def AddObserver(self, *args):
        r"""
        AddObserver(itkObject self, itkEventObject event, itkCommand arg1) -> unsigned long
        AddObserver(itkObject self, itkEventObject event, itkCommand arg1) -> unsigned long
        """

        import itk
        if len(args) == 3 and not issubclass(args[2].__class__, itk.Command) and callable(args[2]):
            args = list(args)
            pycommand = itk.PyCommand.New()
            pycommand.SetCommandCallable( args[2] )
            args[2] = pycommand
            args = tuple(args)
        elif len(args) == 2 and not issubclass(args[1].__class__, itk.Command) and callable(args[1]):
            args = list(args)
            pycommand = itk.PyCommand.New()
            pycommand.SetCommandCallable( args[1] )
            args[1] = pycommand
            args = tuple(args)


        return _ITKCommonBasePython.itkObject_AddObserver(self, *args)

    GetCommand = _swig_new_instance_method(_ITKCommonBasePython.itkObject_GetCommand)
    InvokeEvent = _swig_new_instance_method(_ITKCommonBasePython.itkObject_InvokeEvent)
    RemoveObserver = _swig_new_instance_method(_ITKCommonBasePython.itkObject_RemoveObserver)
    RemoveAllObservers = _swig_new_instance_method(_ITKCommonBasePython.itkObject_RemoveAllObservers)
    HasObserver = _swig_new_instance_method(_ITKCommonBasePython.itkObject_HasObserver)
    GetMetaDataDictionary = _swig_new_instance_method(_ITKCommonBasePython.itkObject_GetMetaDataDictionary)
    SetMetaDataDictionary = _swig_new_instance_method(_ITKCommonBasePython.itkObject_SetMetaDataDictionary)
    SetObjectName = _swig_new_instance_method(_ITKCommonBasePython.itkObject_SetObjectName)
    GetObjectName = _swig_new_instance_method(_ITKCommonBasePython.itkObject_GetObjectName)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkObject
    cast = _swig_new_static_method(_ITKCommonBasePython.itkObject_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkObject_GetPointer)

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

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

          itkObject.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkObject in _ITKCommonBasePython:
_ITKCommonBasePython.itkObject_swigregister(itkObject)
class itkObjectFactoryBase(itkObject):
    r"""Proxy of C++ itkObjectFactoryBase class."""

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    CreateInstance = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_CreateInstance)
    CreateAllInstance = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_CreateAllInstance)
    ReHash = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_ReHash)
    RegisterFactoryInternal = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_RegisterFactoryInternal)
    INSERT_AT_FRONT = _ITKCommonBasePython.itkObjectFactoryBase_INSERT_AT_FRONT
    
    INSERT_AT_BACK = _ITKCommonBasePython.itkObjectFactoryBase_INSERT_AT_BACK
    
    INSERT_AT_POSITION = _ITKCommonBasePython.itkObjectFactoryBase_INSERT_AT_POSITION
    
    RegisterFactory = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_RegisterFactory)
    UnRegisterFactory = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_UnRegisterFactory)
    UnRegisterAllFactories = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_UnRegisterAllFactories)
    GetRegisteredFactories = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_GetRegisteredFactories)
    GetITKSourceVersion = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_GetITKSourceVersion)
    SetStrictVersionChecking = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_SetStrictVersionChecking)
    StrictVersionCheckingOn = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_StrictVersionCheckingOn)
    StrictVersionCheckingOff = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_StrictVersionCheckingOff)
    GetStrictVersionChecking = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_GetStrictVersionChecking)
    GetDescription = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_GetDescription)
    GetClassOverrideNames = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_GetClassOverrideNames)
    GetClassOverrideWithNames = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_GetClassOverrideWithNames)
    GetClassOverrideDescriptions = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_GetClassOverrideDescriptions)
    GetEnableFlags = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_GetEnableFlags)
    SetEnableFlag = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_SetEnableFlag)
    GetEnableFlag = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_GetEnableFlag)
    Disable = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_Disable)
    GetLibraryPath = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_GetLibraryPath)
    GetObjectFactoryBase = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_GetObjectFactoryBase)
    SynchronizeObjectFactoryBase = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_SynchronizeObjectFactoryBase)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkObjectFactoryBase
    cast = _swig_new_static_method(_ITKCommonBasePython.itkObjectFactoryBase_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkObjectFactoryBase_GetPointer)

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

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

          itkObjectFactoryBase.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkObjectFactoryBase in _ITKCommonBasePython:
_ITKCommonBasePython.itkObjectFactoryBase_swigregister(itkObjectFactoryBase)
class itkOutputDataObjectConstIterator(itkDataObjectConstIterator):
    r"""Proxy of C++ itkOutputDataObjectConstIterator class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    GetOutput = _swig_new_instance_method(_ITKCommonBasePython.itkOutputDataObjectConstIterator_GetOutput)

    def __init__(self, *args):
        r"""
        __init__(itkOutputDataObjectConstIterator self, itkProcessObject process) -> itkOutputDataObjectConstIterator
        __init__(itkOutputDataObjectConstIterator self, itkOutputDataObjectConstIterator arg0) -> itkOutputDataObjectConstIterator
        """
        _ITKCommonBasePython.itkOutputDataObjectConstIterator_swiginit(self, _ITKCommonBasePython.new_itkOutputDataObjectConstIterator(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkOutputDataObjectConstIterator

# Register itkOutputDataObjectConstIterator in _ITKCommonBasePython:
_ITKCommonBasePython.itkOutputDataObjectConstIterator_swigregister(itkOutputDataObjectConstIterator)
class itkOutputDataObjectIterator(itkDataObjectIterator):
    r"""Proxy of C++ itkOutputDataObjectIterator class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    GetOutput = _swig_new_instance_method(_ITKCommonBasePython.itkOutputDataObjectIterator_GetOutput)

    def __init__(self, *args):
        r"""
        __init__(itkOutputDataObjectIterator self, itkProcessObject process) -> itkOutputDataObjectIterator
        __init__(itkOutputDataObjectIterator self, itkOutputDataObjectIterator arg0) -> itkOutputDataObjectIterator
        """
        _ITKCommonBasePython.itkOutputDataObjectIterator_swiginit(self, _ITKCommonBasePython.new_itkOutputDataObjectIterator(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkOutputDataObjectIterator

# Register itkOutputDataObjectIterator in _ITKCommonBasePython:
_ITKCommonBasePython.itkOutputDataObjectIterator_swigregister(itkOutputDataObjectIterator)
class itkOutputWindow(itkObject):
    r"""Proxy of C++ itkOutputWindow 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkOutputWindow___New_orig__)
    GetInstance = _swig_new_static_method(_ITKCommonBasePython.itkOutputWindow_GetInstance)
    SetInstance = _swig_new_static_method(_ITKCommonBasePython.itkOutputWindow_SetInstance)
    DisplayText = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_DisplayText)
    DisplayErrorText = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_DisplayErrorText)
    DisplayWarningText = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_DisplayWarningText)
    DisplayGenericOutputText = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_DisplayGenericOutputText)
    DisplayDebugText = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_DisplayDebugText)
    SetPromptUser = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_SetPromptUser)
    GetPromptUser = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_GetPromptUser)
    PromptUserOn = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_PromptUserOn)
    PromptUserOff = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_PromptUserOff)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkOutputWindow
    cast = _swig_new_static_method(_ITKCommonBasePython.itkOutputWindow_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkOutputWindow_GetPointer)

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

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

          itkOutputWindow.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkOutputWindow in _ITKCommonBasePython:
_ITKCommonBasePython.itkOutputWindow_swigregister(itkOutputWindow)
class itkProcessObject(itkObject):
    r"""Proxy of C++ itkProcessObject 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
    GetInputNames = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetInputNames)
    GetRequiredInputNames = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetRequiredInputNames)
    GetInputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetInputs)
    HasInput = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_HasInput)
    GetNumberOfInputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetNumberOfInputs)
    GetNumberOfOutputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetNumberOfOutputs)
    GetOutputNames = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetOutputNames)
    GetOutputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetOutputs)
    HasOutput = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_HasOutput)
    GetIndexedInputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetIndexedInputs)
    GetNumberOfIndexedInputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetNumberOfIndexedInputs)
    GetNumberOfValidRequiredInputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetNumberOfValidRequiredInputs)
    GetIndexedOutputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetIndexedOutputs)
    GetNumberOfIndexedOutputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetNumberOfIndexedOutputs)
    SetAbortGenerateData = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_SetAbortGenerateData)
    GetAbortGenerateData = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetAbortGenerateData)
    AbortGenerateDataOn = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_AbortGenerateDataOn)
    AbortGenerateDataOff = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_AbortGenerateDataOff)
    SetProgress = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_SetProgress)
    GetProgress = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetProgress)
    UpdateProgress = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_UpdateProgress)
    Update = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_Update)
    UpdateLargestPossibleRegion = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_UpdateLargestPossibleRegion)
    UpdateOutputInformation = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_UpdateOutputInformation)
    PropagateRequestedRegion = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_PropagateRequestedRegion)
    UpdateOutputData = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_UpdateOutputData)
    EnlargeOutputRequestedRegion = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_EnlargeOutputRequestedRegion)
    ResetPipeline = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_ResetPipeline)
    MakeOutput = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_MakeOutput)
    SetReleaseDataFlag = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_SetReleaseDataFlag)
    GetReleaseDataFlag = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetReleaseDataFlag)
    ReleaseDataFlagOn = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_ReleaseDataFlagOn)
    ReleaseDataFlagOff = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_ReleaseDataFlagOff)
    SetReleaseDataBeforeUpdateFlag = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_SetReleaseDataBeforeUpdateFlag)
    GetReleaseDataBeforeUpdateFlag = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetReleaseDataBeforeUpdateFlag)
    ReleaseDataBeforeUpdateFlagOn = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_ReleaseDataBeforeUpdateFlagOn)
    ReleaseDataBeforeUpdateFlagOff = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_ReleaseDataBeforeUpdateFlagOff)
    SetNumberOfThreads = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_SetNumberOfThreads)
    GetNumberOfThreads = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetNumberOfThreads)
    GetMultiThreader = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetMultiThreader)
    PrepareOutputs = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_PrepareOutputs)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkProcessObject
    cast = _swig_new_static_method(_ITKCommonBasePython.itkProcessObject_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkProcessObject_GetPointer)

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

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

          itkProcessObject.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


    def __len__(self):
        """Returns the number of outputs of that object.
        """
        return self.GetNumberOfIndexedOutputs()

    def __getitem__(self, item):
        """Returns the outputs of that object.

        The outputs are casted to their real type.
        Several outputs may be returned by using the slice notation.
        """
        import itk
        if isinstance(item, slice):
            indices = item.indices(len(self))
            return [itk.down_cast(self.GetOutput(i)) for i in range(*indices)]
        else:
            return itk.down_cast(self.GetOutput(item))

    def __call__(self, *args, **kargs):
        """Change the inputs and attributes of the object and update it.

        The syntax is the same as the one used in New().
        UpdateLargestPossibleRegion() is ran once the input are changed, and
        the current object is returned, to make is easier to get one of the
        outputs. Something like 'filter(newInput, Threshold=10)[0]' would
        return the first output of the filter up to date.
        """
        import itk
        itk.set_inputs( self, args, kargs )
        self.UpdateLargestPossibleRegion()
        return self


# Register itkProcessObject in _ITKCommonBasePython:
_ITKCommonBasePython.itkProcessObject_swigregister(itkProcessObject)
class itkProgressReporter(object):
    r"""Proxy of C++ itkProgressReporter class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _ITKCommonBasePython.delete_itkProgressReporter
    CompletedPixel = _swig_new_instance_method(_ITKCommonBasePython.itkProgressReporter_CompletedPixel)

    def __init__(self, *args):
        r"""
        __init__(itkProgressReporter self, itkProcessObject filter, unsigned int threadId, unsigned long numberOfPixels, unsigned long numberOfUpdates=100, float initialProgress=0., float progressWeight=1.) -> itkProgressReporter
        __init__(itkProgressReporter self, itkProgressReporter arg0) -> itkProgressReporter
        """
        _ITKCommonBasePython.itkProgressReporter_swiginit(self, _ITKCommonBasePython.new_itkProgressReporter(*args))

# Register itkProgressReporter in _ITKCommonBasePython:
_ITKCommonBasePython.itkProgressReporter_swigregister(itkProgressReporter)
class itkRandomVariateGeneratorBase(itkObject):
    r"""Proxy of C++ itkRandomVariateGeneratorBase class."""

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    GetVariate = _swig_new_instance_method(_ITKCommonBasePython.itkRandomVariateGeneratorBase_GetVariate)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkRandomVariateGeneratorBase
    cast = _swig_new_static_method(_ITKCommonBasePython.itkRandomVariateGeneratorBase_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkRandomVariateGeneratorBase_GetPointer)

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

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

          itkRandomVariateGeneratorBase.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkRandomVariateGeneratorBase in _ITKCommonBasePython:
_ITKCommonBasePython.itkRandomVariateGeneratorBase_swigregister(itkRandomVariateGeneratorBase)
class itkRealTimeClock(itkObject):
    r"""Proxy of C++ itkRealTimeClock 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkRealTimeClock___New_orig__)
    Clone = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeClock_Clone)
    GetTimeInSeconds = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeClock_GetTimeInSeconds)
    GetFrequency = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeClock_GetFrequency)
    GetRealTimeStamp = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeClock_GetRealTimeStamp)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkRealTimeClock
    cast = _swig_new_static_method(_ITKCommonBasePython.itkRealTimeClock_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeClock_GetPointer)

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

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

          itkRealTimeClock.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkRealTimeClock in _ITKCommonBasePython:
_ITKCommonBasePython.itkRealTimeClock_swigregister(itkRealTimeClock)
class itkRealTimeInterval(object):
    r"""Proxy of C++ itkRealTimeInterval class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _ITKCommonBasePython.delete_itkRealTimeInterval
    GetTimeInMicroSeconds = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval_GetTimeInMicroSeconds)
    GetTimeInMilliSeconds = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval_GetTimeInMilliSeconds)
    GetTimeInSeconds = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval_GetTimeInSeconds)
    GetTimeInMinutes = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval_GetTimeInMinutes)
    GetTimeInHours = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval_GetTimeInHours)
    GetTimeInDays = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval_GetTimeInDays)
    __sub__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___sub__)
    __add__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___add__)
    __isub__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___isub__)
    __iadd__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___iadd__)
    __gt__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___gt__)
    __lt__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___lt__)
    __eq__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___eq__)
    __ne__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___ne__)
    __le__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___le__)
    __ge__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval___ge__)
    Set = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeInterval_Set)

    def __init__(self, *args):
        r"""
        __init__(itkRealTimeInterval self) -> itkRealTimeInterval
        __init__(itkRealTimeInterval self, long long arg0, long long arg1) -> itkRealTimeInterval
        __init__(itkRealTimeInterval self, itkRealTimeInterval arg0) -> itkRealTimeInterval
        """
        _ITKCommonBasePython.itkRealTimeInterval_swiginit(self, _ITKCommonBasePython.new_itkRealTimeInterval(*args))

# Register itkRealTimeInterval in _ITKCommonBasePython:
_ITKCommonBasePython.itkRealTimeInterval_swigregister(itkRealTimeInterval)
class itkRealTimeStamp(object):
    r"""Proxy of C++ itkRealTimeStamp class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _ITKCommonBasePython.delete_itkRealTimeStamp
    GetTimeInMicroSeconds = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp_GetTimeInMicroSeconds)
    GetTimeInMilliSeconds = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp_GetTimeInMilliSeconds)
    GetTimeInSeconds = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp_GetTimeInSeconds)
    GetTimeInMinutes = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp_GetTimeInMinutes)
    GetTimeInHours = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp_GetTimeInHours)
    GetTimeInDays = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp_GetTimeInDays)
    __add__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___add__)
    __sub__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___sub__)
    __iadd__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___iadd__)
    __isub__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___isub__)
    __gt__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___gt__)
    __lt__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___lt__)
    __eq__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___eq__)
    __ne__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___ne__)
    __le__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___le__)
    __ge__ = _swig_new_instance_method(_ITKCommonBasePython.itkRealTimeStamp___ge__)

    def __init__(self, *args):
        r"""
        __init__(itkRealTimeStamp self) -> itkRealTimeStamp
        __init__(itkRealTimeStamp self, itkRealTimeStamp arg0) -> itkRealTimeStamp
        """
        _ITKCommonBasePython.itkRealTimeStamp_swiginit(self, _ITKCommonBasePython.new_itkRealTimeStamp(*args))

# Register itkRealTimeStamp in _ITKCommonBasePython:
_ITKCommonBasePython.itkRealTimeStamp_swigregister(itkRealTimeStamp)
class itkRegion(object):
    r"""Proxy of C++ itkRegion class."""

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    ITK_UNSTRUCTURED_REGION = _ITKCommonBasePython.itkRegion_ITK_UNSTRUCTURED_REGION
    
    ITK_STRUCTURED_REGION = _ITKCommonBasePython.itkRegion_ITK_STRUCTURED_REGION
    
    GetNameOfClass = _swig_new_instance_method(_ITKCommonBasePython.itkRegion_GetNameOfClass)
    GetRegionType = _swig_new_instance_method(_ITKCommonBasePython.itkRegion_GetRegionType)
    Print = _swig_new_instance_method(_ITKCommonBasePython.itkRegion_Print)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkRegion

# Register itkRegion in _ITKCommonBasePython:
_ITKCommonBasePython.itkRegion_swigregister(itkRegion)
class itkResourceProbeDD(object):
    r"""Proxy of C++ itkResourceProbeDD class."""

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _ITKCommonBasePython.delete_itkResourceProbeDD
    GetType = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetType)
    GetUnit = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetUnit)
    Start = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_Start)
    Stop = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_Stop)
    GetNumberOfStarts = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetNumberOfStarts)
    GetNumberOfStops = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetNumberOfStops)
    GetNumberOfIteration = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetNumberOfIteration)
    GetInstantValue = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetInstantValue)
    GetTotal = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetTotal)
    GetMean = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetMean)
    Reset = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_Reset)
    GetMinimum = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetMinimum)
    GetMaximum = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetMaximum)
    GetStandardDeviation = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetStandardDeviation)
    GetStandardError = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetStandardError)
    SetNameOfProbe = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_SetNameOfProbe)
    GetNameOfProbe = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_GetNameOfProbe)
    PrintSystemInformation = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_PrintSystemInformation)
    Report = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_Report)
    ExpandedReport = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_ExpandedReport)
    JSONReport = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_JSONReport)
    PrintJSONSystemInformation = _swig_new_instance_method(_ITKCommonBasePython.itkResourceProbeDD_PrintJSONSystemInformation)

# Register itkResourceProbeDD in _ITKCommonBasePython:
_ITKCommonBasePython.itkResourceProbeDD_swigregister(itkResourceProbeDD)
class itkSimpleFilterWatcher(object):
    r"""Proxy of C++ itkSimpleFilterWatcher class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkSimpleFilterWatcher self, itkProcessObject o, char const * comment="") -> itkSimpleFilterWatcher
        __init__(itkSimpleFilterWatcher self, itkSimpleFilterWatcher arg0) -> itkSimpleFilterWatcher
        __init__(itkSimpleFilterWatcher self) -> itkSimpleFilterWatcher
        """
        _ITKCommonBasePython.itkSimpleFilterWatcher_swiginit(self, _ITKCommonBasePython.new_itkSimpleFilterWatcher(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkSimpleFilterWatcher
    GetNameOfClass = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_GetNameOfClass)
    QuietOn = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_QuietOn)
    QuietOff = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_QuietOff)
    TestAbortOn = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_TestAbortOn)
    TestAbortOff = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_TestAbortOff)
    GetProcess = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_GetProcess)
    SetSteps = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_SetSteps)
    GetSteps = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_GetSteps)
    SetIterations = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_SetIterations)
    GetIterations = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_GetIterations)
    SetQuiet = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_SetQuiet)
    GetQuiet = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_GetQuiet)
    GetComment = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_GetComment)
    GetTimeProbe = _swig_new_instance_method(_ITKCommonBasePython.itkSimpleFilterWatcher_GetTimeProbe)

# Register itkSimpleFilterWatcher in _ITKCommonBasePython:
_ITKCommonBasePython.itkSimpleFilterWatcher_swigregister(itkSimpleFilterWatcher)
class itkStoppingCriterionBase(itkObject):
    r"""Proxy of C++ itkStoppingCriterionBase class."""

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    IsSatisfied = _swig_new_instance_method(_ITKCommonBasePython.itkStoppingCriterionBase_IsSatisfied)
    GetDescription = _swig_new_instance_method(_ITKCommonBasePython.itkStoppingCriterionBase_GetDescription)

# Register itkStoppingCriterionBase in _ITKCommonBasePython:
_ITKCommonBasePython.itkStoppingCriterionBase_swigregister(itkStoppingCriterionBase)
class itkThreadJob(object):
    r"""Proxy of C++ itkThreadJob class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _ITKCommonBasePython.delete_itkThreadJob

    def __init__(self, *args):
        r"""
        __init__(itkThreadJob self) -> itkThreadJob
        __init__(itkThreadJob self, itkThreadJob arg0) -> itkThreadJob
        """
        _ITKCommonBasePython.itkThreadJob_swiginit(self, _ITKCommonBasePython.new_itkThreadJob(*args))

# Register itkThreadJob in _ITKCommonBasePython:
_ITKCommonBasePython.itkThreadJob_swigregister(itkThreadJob)
class itkThreadPool(itkObject):
    r"""Proxy of C++ itkThreadPool 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkThreadPool___New_orig__)
    GetInstance = _swig_new_static_method(_ITKCommonBasePython.itkThreadPool_GetInstance)
    AddWork = _swig_new_instance_method(_ITKCommonBasePython.itkThreadPool_AddWork)
    AddThreads = _swig_new_instance_method(_ITKCommonBasePython.itkThreadPool_AddThreads)
    GetNumberOfCurrentlyIdleThreads = _swig_new_instance_method(_ITKCommonBasePython.itkThreadPool_GetNumberOfCurrentlyIdleThreads)
    WaitForJob = _swig_new_instance_method(_ITKCommonBasePython.itkThreadPool_WaitForJob)
    GetGlobalDefaultNumberOfThreadsByPlatform = _swig_new_static_method(_ITKCommonBasePython.itkThreadPool_GetGlobalDefaultNumberOfThreadsByPlatform)
    GetGlobalDefaultNumberOfThreads = _swig_new_static_method(_ITKCommonBasePython.itkThreadPool_GetGlobalDefaultNumberOfThreads)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkThreadPool
    cast = _swig_new_static_method(_ITKCommonBasePython.itkThreadPool_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkThreadPool_GetPointer)

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

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

          itkThreadPool.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkThreadPool in _ITKCommonBasePython:
_ITKCommonBasePython.itkThreadPool_swigregister(itkThreadPool)
class itkTimeProbe(itkResourceProbeDD):
    r"""Proxy of C++ itkTimeProbe class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _ITKCommonBasePython.delete_itkTimeProbe
    GetMeanTime = _swig_new_instance_method(_ITKCommonBasePython.itkTimeProbe_GetMeanTime)
    GetRealTimeClock = _swig_new_instance_method(_ITKCommonBasePython.itkTimeProbe_GetRealTimeClock)

    def __init__(self, *args):
        r"""
        __init__(itkTimeProbe self) -> itkTimeProbe
        __init__(itkTimeProbe self, itkTimeProbe arg0) -> itkTimeProbe
        """
        _ITKCommonBasePython.itkTimeProbe_swiginit(self, _ITKCommonBasePython.new_itkTimeProbe(*args))

# Register itkTimeProbe in _ITKCommonBasePython:
_ITKCommonBasePython.itkTimeProbe_swigregister(itkTimeProbe)
class itkTimeStamp(object):
    r"""Proxy of C++ itkTimeStamp class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    New = _swig_new_static_method(_ITKCommonBasePython.itkTimeStamp_New)
    GetNameOfClass = _swig_new_static_method(_ITKCommonBasePython.itkTimeStamp_GetNameOfClass)
    Modified = _swig_new_instance_method(_ITKCommonBasePython.itkTimeStamp_Modified)
    GetMTime = _swig_new_instance_method(_ITKCommonBasePython.itkTimeStamp_GetMTime)
    __gt__ = _swig_new_instance_method(_ITKCommonBasePython.itkTimeStamp___gt__)
    __lt__ = _swig_new_instance_method(_ITKCommonBasePython.itkTimeStamp___lt__)
    GetGlobalTimeStamp = _swig_new_static_method(_ITKCommonBasePython.itkTimeStamp_GetGlobalTimeStamp)
    SetGlobalTimeStamp = _swig_new_static_method(_ITKCommonBasePython.itkTimeStamp_SetGlobalTimeStamp)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkTimeStamp

    def __init__(self, *args):
        r"""
        __init__(itkTimeStamp self) -> itkTimeStamp
        __init__(itkTimeStamp self, itkTimeStamp arg0) -> itkTimeStamp
        """
        _ITKCommonBasePython.itkTimeStamp_swiginit(self, _ITKCommonBasePython.new_itkTimeStamp(*args))

# Register itkTimeStamp in _ITKCommonBasePython:
_ITKCommonBasePython.itkTimeStamp_swigregister(itkTimeStamp)
class itkVersion(itkObject):
    r"""Proxy of C++ itkVersion 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkVersion___New_orig__)
    Clone = _swig_new_instance_method(_ITKCommonBasePython.itkVersion_Clone)
    GetITKVersion = _swig_new_static_method(_ITKCommonBasePython.itkVersion_GetITKVersion)
    GetITKMajorVersion = _swig_new_static_method(_ITKCommonBasePython.itkVersion_GetITKMajorVersion)
    GetITKMinorVersion = _swig_new_static_method(_ITKCommonBasePython.itkVersion_GetITKMinorVersion)
    GetITKBuildVersion = _swig_new_static_method(_ITKCommonBasePython.itkVersion_GetITKBuildVersion)
    GetITKSourceVersion = _swig_new_static_method(_ITKCommonBasePython.itkVersion_GetITKSourceVersion)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkVersion
    cast = _swig_new_static_method(_ITKCommonBasePython.itkVersion_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkVersion_GetPointer)

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

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

          itkVersion.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkVersion in _ITKCommonBasePython:
_ITKCommonBasePython.itkVersion_swigregister(itkVersion)
class itkXMLFilterWatcher(itkSimpleFilterWatcher):
    r"""Proxy of C++ itkXMLFilterWatcher class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkXMLFilterWatcher self, itkProcessObject o, char const * comment="") -> itkXMLFilterWatcher
        __init__(itkXMLFilterWatcher self, itkXMLFilterWatcher arg0) -> itkXMLFilterWatcher
        """
        _ITKCommonBasePython.itkXMLFilterWatcher_swiginit(self, _ITKCommonBasePython.new_itkXMLFilterWatcher(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkXMLFilterWatcher

# Register itkXMLFilterWatcher in _ITKCommonBasePython:
_ITKCommonBasePython.itkXMLFilterWatcher_swigregister(itkXMLFilterWatcher)
class itkAnyEvent(itkEventObject):
    r"""Proxy of C++ itkAnyEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkAnyEvent self) -> itkAnyEvent
        __init__(itkAnyEvent self, itkAnyEvent s) -> itkAnyEvent
        """
        _ITKCommonBasePython.itkAnyEvent_swiginit(self, _ITKCommonBasePython.new_itkAnyEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkAnyEvent

# Register itkAnyEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkAnyEvent_swigregister(itkAnyEvent)
class itkCommand(itkObject):
    r"""Proxy of C++ itkCommand class."""

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    Execute = _swig_new_instance_method(_ITKCommonBasePython.itkCommand_Execute)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkCommand
    cast = _swig_new_static_method(_ITKCommonBasePython.itkCommand_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkCommand_GetPointer)

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

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

          itkCommand.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkCommand in _ITKCommonBasePython:
_ITKCommonBasePython.itkCommand_swigregister(itkCommand)
class itkDataObject(itkObject):
    r"""Proxy of C++ itkDataObject 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
    DisconnectPipeline = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_DisconnectPipeline)
    GetSource = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_GetSource)
    GetSourceOutputName = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_GetSourceOutputName)
    GetSourceOutputIndex = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_GetSourceOutputIndex)
    Initialize = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_Initialize)
    SetReleaseDataFlag = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_SetReleaseDataFlag)
    GetReleaseDataFlag = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_GetReleaseDataFlag)
    ReleaseDataFlagOn = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_ReleaseDataFlagOn)
    ReleaseDataFlagOff = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_ReleaseDataFlagOff)
    SetGlobalReleaseDataFlag = _swig_new_static_method(_ITKCommonBasePython.itkDataObject_SetGlobalReleaseDataFlag)
    GetGlobalReleaseDataFlag = _swig_new_static_method(_ITKCommonBasePython.itkDataObject_GetGlobalReleaseDataFlag)
    GlobalReleaseDataFlagOn = _swig_new_static_method(_ITKCommonBasePython.itkDataObject_GlobalReleaseDataFlagOn)
    GlobalReleaseDataFlagOff = _swig_new_static_method(_ITKCommonBasePython.itkDataObject_GlobalReleaseDataFlagOff)
    ReleaseData = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_ReleaseData)
    ShouldIReleaseData = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_ShouldIReleaseData)
    GetDataReleased = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_GetDataReleased)
    Update = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_Update)
    UpdateOutputInformation = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_UpdateOutputInformation)
    PropagateRequestedRegion = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_PropagateRequestedRegion)
    UpdateOutputData = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_UpdateOutputData)
    ResetPipeline = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_ResetPipeline)
    SetPipelineMTime = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_SetPipelineMTime)
    GetPipelineMTime = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_GetPipelineMTime)
    GetUpdateMTime = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_GetUpdateMTime)
    SetRealTimeStamp = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_SetRealTimeStamp)
    GetRealTimeStamp = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_GetRealTimeStamp)
    PrepareForNewData = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_PrepareForNewData)
    DataHasBeenGenerated = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_DataHasBeenGenerated)
    SetRequestedRegionToLargestPossibleRegion = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_SetRequestedRegionToLargestPossibleRegion)
    RequestedRegionIsOutsideOfTheBufferedRegion = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_RequestedRegionIsOutsideOfTheBufferedRegion)
    VerifyRequestedRegion = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_VerifyRequestedRegion)
    CopyInformation = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_CopyInformation)
    SetRequestedRegion = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_SetRequestedRegion)
    Graft = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_Graft)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkDataObject
    cast = _swig_new_static_method(_ITKCommonBasePython.itkDataObject_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkDataObject_GetPointer)

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

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

          itkDataObject.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkDataObject in _ITKCommonBasePython:
_ITKCommonBasePython.itkDataObject_swigregister(itkDataObject)
class itkDeleteEvent(itkAnyEvent):
    r"""Proxy of C++ itkDeleteEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkDeleteEvent self) -> itkDeleteEvent
        __init__(itkDeleteEvent self, itkDeleteEvent s) -> itkDeleteEvent
        """
        _ITKCommonBasePython.itkDeleteEvent_swiginit(self, _ITKCommonBasePython.new_itkDeleteEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkDeleteEvent

# Register itkDeleteEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkDeleteEvent_swigregister(itkDeleteEvent)
class itkDirectory(itkObject):
    r"""Proxy of C++ itkDirectory 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkDirectory___New_orig__)
    Load = _swig_new_instance_method(_ITKCommonBasePython.itkDirectory_Load)
    GetNumberOfFiles = _swig_new_instance_method(_ITKCommonBasePython.itkDirectory_GetNumberOfFiles)
    GetFile = _swig_new_instance_method(_ITKCommonBasePython.itkDirectory_GetFile)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkDirectory
    cast = _swig_new_static_method(_ITKCommonBasePython.itkDirectory_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkDirectory_GetPointer)

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

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

          itkDirectory.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkDirectory in _ITKCommonBasePython:
_ITKCommonBasePython.itkDirectory_swigregister(itkDirectory)
class itkDynamicLoader(itkObject):
    r"""Proxy of C++ itkDynamicLoader 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkDynamicLoader___New_orig__)
    Clone = _swig_new_instance_method(_ITKCommonBasePython.itkDynamicLoader_Clone)
    OpenLibrary = _swig_new_static_method(_ITKCommonBasePython.itkDynamicLoader_OpenLibrary)
    CloseLibrary = _swig_new_static_method(_ITKCommonBasePython.itkDynamicLoader_CloseLibrary)
    GetSymbolAddress = _swig_new_static_method(_ITKCommonBasePython.itkDynamicLoader_GetSymbolAddress)
    LibPrefix = _swig_new_static_method(_ITKCommonBasePython.itkDynamicLoader_LibPrefix)
    LibExtension = _swig_new_static_method(_ITKCommonBasePython.itkDynamicLoader_LibExtension)
    LastError = _swig_new_static_method(_ITKCommonBasePython.itkDynamicLoader_LastError)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkDynamicLoader
    cast = _swig_new_static_method(_ITKCommonBasePython.itkDynamicLoader_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkDynamicLoader_GetPointer)

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

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

          itkDynamicLoader.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkDynamicLoader in _ITKCommonBasePython:
_ITKCommonBasePython.itkDynamicLoader_swigregister(itkDynamicLoader)
class itkEndEvent(itkAnyEvent):
    r"""Proxy of C++ itkEndEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkEndEvent self) -> itkEndEvent
        __init__(itkEndEvent self, itkEndEvent s) -> itkEndEvent
        """
        _ITKCommonBasePython.itkEndEvent_swiginit(self, _ITKCommonBasePython.new_itkEndEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkEndEvent

# Register itkEndEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkEndEvent_swigregister(itkEndEvent)
class itkExitEvent(itkAnyEvent):
    r"""Proxy of C++ itkExitEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkExitEvent self) -> itkExitEvent
        __init__(itkExitEvent self, itkExitEvent s) -> itkExitEvent
        """
        _ITKCommonBasePython.itkExitEvent_swiginit(self, _ITKCommonBasePython.new_itkExitEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkExitEvent

# Register itkExitEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkExitEvent_swigregister(itkExitEvent)
class itkImageIORegion(itkRegion):
    r"""Proxy of C++ itkImageIORegion class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    GetImageDimension = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_GetImageDimension)
    GetRegionDimension = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_GetRegionDimension)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkImageIORegion

    def __init__(self, *args):
        r"""
        __init__(itkImageIORegion self, unsigned int dimension) -> itkImageIORegion
        __init__(itkImageIORegion self) -> itkImageIORegion
        __init__(itkImageIORegion self, itkImageIORegion region) -> itkImageIORegion
        """
        _ITKCommonBasePython.itkImageIORegion_swiginit(self, _ITKCommonBasePython.new_itkImageIORegion(*args))
    GetModifiableIndex = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_GetModifiableIndex)
    GetModifiableSize = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_GetModifiableSize)
    GetSize = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_GetSize)
    GetIndex = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_GetIndex)
    SetSize = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_SetSize)
    SetIndex = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_SetIndex)
    __eq__ = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion___eq__)
    __ne__ = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion___ne__)
    IsInside = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_IsInside)
    GetNumberOfPixels = _swig_new_instance_method(_ITKCommonBasePython.itkImageIORegion_GetNumberOfPixels)

# Register itkImageIORegion in _ITKCommonBasePython:
_ITKCommonBasePython.itkImageIORegion_swigregister(itkImageIORegion)
class itkImageRegionSplitterBase(itkObject):
    r"""Proxy of C++ itkImageRegionSplitterBase class."""

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    GetNumberOfSplits = _swig_new_instance_method(_ITKCommonBasePython.itkImageRegionSplitterBase_GetNumberOfSplits)
    GetSplit = _swig_new_instance_method(_ITKCommonBasePython.itkImageRegionSplitterBase_GetSplit)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkImageRegionSplitterBase
    cast = _swig_new_static_method(_ITKCommonBasePython.itkImageRegionSplitterBase_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkImageRegionSplitterBase_GetPointer)

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

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

          itkImageRegionSplitterBase.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkImageRegionSplitterBase in _ITKCommonBasePython:
_ITKCommonBasePython.itkImageRegionSplitterBase_swigregister(itkImageRegionSplitterBase)
class itkImageRegionSplitterDirection(itkImageRegionSplitterBase):
    r"""Proxy of C++ itkImageRegionSplitterDirection 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkImageRegionSplitterDirection___New_orig__)
    Clone = _swig_new_instance_method(_ITKCommonBasePython.itkImageRegionSplitterDirection_Clone)
    GetDirection = _swig_new_instance_method(_ITKCommonBasePython.itkImageRegionSplitterDirection_GetDirection)
    SetDirection = _swig_new_instance_method(_ITKCommonBasePython.itkImageRegionSplitterDirection_SetDirection)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkImageRegionSplitterDirection
    cast = _swig_new_static_method(_ITKCommonBasePython.itkImageRegionSplitterDirection_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkImageRegionSplitterDirection_GetPointer)

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

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

          itkImageRegionSplitterDirection.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkImageRegionSplitterDirection in _ITKCommonBasePython:
_ITKCommonBasePython.itkImageRegionSplitterDirection_swigregister(itkImageRegionSplitterDirection)
class itkInitializeEvent(itkAnyEvent):
    r"""Proxy of C++ itkInitializeEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkInitializeEvent self) -> itkInitializeEvent
        __init__(itkInitializeEvent self, itkInitializeEvent s) -> itkInitializeEvent
        """
        _ITKCommonBasePython.itkInitializeEvent_swiginit(self, _ITKCommonBasePython.new_itkInitializeEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkInitializeEvent

# Register itkInitializeEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkInitializeEvent_swigregister(itkInitializeEvent)
class itkIterationEvent(itkAnyEvent):
    r"""Proxy of C++ itkIterationEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkIterationEvent self) -> itkIterationEvent
        __init__(itkIterationEvent self, itkIterationEvent s) -> itkIterationEvent
        """
        _ITKCommonBasePython.itkIterationEvent_swiginit(self, _ITKCommonBasePython.new_itkIterationEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkIterationEvent

# Register itkIterationEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkIterationEvent_swigregister(itkIterationEvent)
class itkLightProcessObject(itkObject):
    r"""Proxy of C++ itkLightProcessObject 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkLightProcessObject___New_orig__)
    Clone = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_Clone)
    SetAbortGenerateData = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_SetAbortGenerateData)
    GetAbortGenerateData = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_GetAbortGenerateData)
    AbortGenerateDataOn = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_AbortGenerateDataOn)
    AbortGenerateDataOff = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_AbortGenerateDataOff)
    SetProgress = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_SetProgress)
    GetProgress = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_GetProgress)
    UpdateProgress = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_UpdateProgress)
    UpdateOutputData = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_UpdateOutputData)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkLightProcessObject
    cast = _swig_new_static_method(_ITKCommonBasePython.itkLightProcessObject_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkLightProcessObject_GetPointer)

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

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

          itkLightProcessObject.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkLightProcessObject in _ITKCommonBasePython:
_ITKCommonBasePython.itkLightProcessObject_swigregister(itkLightProcessObject)
class itkMersenneTwisterRandomVariateGenerator(itkRandomVariateGeneratorBase):
    r"""Proxy of C++ itkMersenneTwisterRandomVariateGenerator 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator___New_orig__)
    GetInstance = _swig_new_static_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetInstance)
    Initialize = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_Initialize)
    GetVariateWithClosedRange = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetVariateWithClosedRange)
    GetVariateWithOpenUpperRange = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetVariateWithOpenUpperRange)
    GetVariateWithOpenRange = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetVariateWithOpenRange)
    GetIntegerVariate = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetIntegerVariate)
    Get53BitVariate = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_Get53BitVariate)
    GetNormalVariate = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetNormalVariate)
    GetUniformVariate = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetUniformVariate)
    __call__ = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator___call__)
    SetSeed = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_SetSeed)
    GetSeed = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetSeed)
    GetNextSeed = _swig_new_static_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetNextSeed)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkMersenneTwisterRandomVariateGenerator
    cast = _swig_new_static_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_GetPointer)

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

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

          itkMersenneTwisterRandomVariateGenerator.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkMersenneTwisterRandomVariateGenerator in _ITKCommonBasePython:
_ITKCommonBasePython.itkMersenneTwisterRandomVariateGenerator_swigregister(itkMersenneTwisterRandomVariateGenerator)
class itkMeshRegion(itkRegion):
    r"""Proxy of C++ itkMeshRegion class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _ITKCommonBasePython.delete_itkMeshRegion
    GetNumberOfRegions = _swig_new_instance_method(_ITKCommonBasePython.itkMeshRegion_GetNumberOfRegions)
    SetNumberOfRegions = _swig_new_instance_method(_ITKCommonBasePython.itkMeshRegion_SetNumberOfRegions)
    GetRegion = _swig_new_instance_method(_ITKCommonBasePython.itkMeshRegion_GetRegion)
    SetRegion = _swig_new_instance_method(_ITKCommonBasePython.itkMeshRegion_SetRegion)

    def __init__(self, *args):
        r"""
        __init__(itkMeshRegion self) -> itkMeshRegion
        __init__(itkMeshRegion self, itkMeshRegion arg0) -> itkMeshRegion
        """
        _ITKCommonBasePython.itkMeshRegion_swiginit(self, _ITKCommonBasePython.new_itkMeshRegion(*args))

# Register itkMeshRegion in _ITKCommonBasePython:
_ITKCommonBasePython.itkMeshRegion_swigregister(itkMeshRegion)
class itkModifiedEvent(itkAnyEvent):
    r"""Proxy of C++ itkModifiedEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkModifiedEvent self) -> itkModifiedEvent
        __init__(itkModifiedEvent self, itkModifiedEvent s) -> itkModifiedEvent
        """
        _ITKCommonBasePython.itkModifiedEvent_swiginit(self, _ITKCommonBasePython.new_itkModifiedEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkModifiedEvent

# Register itkModifiedEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkModifiedEvent_swigregister(itkModifiedEvent)
class itkMultiResolutionIterationEvent(itkIterationEvent):
    r"""Proxy of C++ itkMultiResolutionIterationEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkMultiResolutionIterationEvent self) -> itkMultiResolutionIterationEvent
        __init__(itkMultiResolutionIterationEvent self, itkMultiResolutionIterationEvent s) -> itkMultiResolutionIterationEvent
        """
        _ITKCommonBasePython.itkMultiResolutionIterationEvent_swiginit(self, _ITKCommonBasePython.new_itkMultiResolutionIterationEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkMultiResolutionIterationEvent

# Register itkMultiResolutionIterationEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkMultiResolutionIterationEvent_swigregister(itkMultiResolutionIterationEvent)
class itkMultiThreader(itkObject):
    r"""Proxy of C++ itkMultiThreader 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
    __New_orig__ = _swig_new_static_method(_ITKCommonBasePython.itkMultiThreader___New_orig__)
    Clone = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_Clone)
    SetNumberOfThreads = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_SetNumberOfThreads)
    GetNumberOfThreads = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_GetNumberOfThreads)
    SetGlobalMaximumNumberOfThreads = _swig_new_static_method(_ITKCommonBasePython.itkMultiThreader_SetGlobalMaximumNumberOfThreads)
    GetGlobalMaximumNumberOfThreads = _swig_new_static_method(_ITKCommonBasePython.itkMultiThreader_GetGlobalMaximumNumberOfThreads)
    SetGlobalDefaultUseThreadPool = _swig_new_static_method(_ITKCommonBasePython.itkMultiThreader_SetGlobalDefaultUseThreadPool)
    GetGlobalDefaultUseThreadPool = _swig_new_static_method(_ITKCommonBasePython.itkMultiThreader_GetGlobalDefaultUseThreadPool)
    SetGlobalDefaultNumberOfThreads = _swig_new_static_method(_ITKCommonBasePython.itkMultiThreader_SetGlobalDefaultNumberOfThreads)
    GetGlobalDefaultNumberOfThreads = _swig_new_static_method(_ITKCommonBasePython.itkMultiThreader_GetGlobalDefaultNumberOfThreads)
    SingleMethodExecute = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_SingleMethodExecute)
    MultipleMethodExecute = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_MultipleMethodExecute)
    TerminateThread = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_TerminateThread)
    SetThreadPool = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_SetThreadPool)
    GetModifiableThreadPool = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_GetModifiableThreadPool)
    GetThreadPool = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_GetThreadPool)
    SetUseThreadPool = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_SetUseThreadPool)
    GetUseThreadPool = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_GetUseThreadPool)
    __swig_destroy__ = _ITKCommonBasePython.delete_itkMultiThreader
    cast = _swig_new_static_method(_ITKCommonBasePython.itkMultiThreader_cast)
    GetPointer = _swig_new_instance_method(_ITKCommonBasePython.itkMultiThreader_GetPointer)

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

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

          itkMultiThreader.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkMultiThreader in _ITKCommonBasePython:
_ITKCommonBasePython.itkMultiThreader_swigregister(itkMultiThreader)
class itkPickEvent(itkAnyEvent):
    r"""Proxy of C++ itkPickEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkPickEvent self) -> itkPickEvent
        __init__(itkPickEvent self, itkPickEvent s) -> itkPickEvent
        """
        _ITKCommonBasePython.itkPickEvent_swiginit(self, _ITKCommonBasePython.new_itkPickEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkPickEvent

# Register itkPickEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkPickEvent_swigregister(itkPickEvent)
class itkProgressEvent(itkAnyEvent):
    r"""Proxy of C++ itkProgressEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkProgressEvent self) -> itkProgressEvent
        __init__(itkProgressEvent self, itkProgressEvent s) -> itkProgressEvent
        """
        _ITKCommonBasePython.itkProgressEvent_swiginit(self, _ITKCommonBasePython.new_itkProgressEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkProgressEvent

# Register itkProgressEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkProgressEvent_swigregister(itkProgressEvent)
class itkStartEvent(itkAnyEvent):
    r"""Proxy of C++ itkStartEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkStartEvent self) -> itkStartEvent
        __init__(itkStartEvent self, itkStartEvent s) -> itkStartEvent
        """
        _ITKCommonBasePython.itkStartEvent_swiginit(self, _ITKCommonBasePython.new_itkStartEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkStartEvent

# Register itkStartEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkStartEvent_swigregister(itkStartEvent)
class itkStartPickEvent(itkPickEvent):
    r"""Proxy of C++ itkStartPickEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkStartPickEvent self) -> itkStartPickEvent
        __init__(itkStartPickEvent self, itkStartPickEvent s) -> itkStartPickEvent
        """
        _ITKCommonBasePython.itkStartPickEvent_swiginit(self, _ITKCommonBasePython.new_itkStartPickEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkStartPickEvent

# Register itkStartPickEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkStartPickEvent_swigregister(itkStartPickEvent)
class itkUserEvent(itkAnyEvent):
    r"""Proxy of C++ itkUserEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkUserEvent self) -> itkUserEvent
        __init__(itkUserEvent self, itkUserEvent s) -> itkUserEvent
        """
        _ITKCommonBasePython.itkUserEvent_swiginit(self, _ITKCommonBasePython.new_itkUserEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkUserEvent

# Register itkUserEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkUserEvent_swigregister(itkUserEvent)
class itkAbortCheckEvent(itkPickEvent):
    r"""Proxy of C++ itkAbortCheckEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkAbortCheckEvent self) -> itkAbortCheckEvent
        __init__(itkAbortCheckEvent self, itkAbortCheckEvent s) -> itkAbortCheckEvent
        """
        _ITKCommonBasePython.itkAbortCheckEvent_swiginit(self, _ITKCommonBasePython.new_itkAbortCheckEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkAbortCheckEvent

# Register itkAbortCheckEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkAbortCheckEvent_swigregister(itkAbortCheckEvent)
class itkAbortEvent(itkAnyEvent):
    r"""Proxy of C++ itkAbortEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkAbortEvent self) -> itkAbortEvent
        __init__(itkAbortEvent self, itkAbortEvent s) -> itkAbortEvent
        """
        _ITKCommonBasePython.itkAbortEvent_swiginit(self, _ITKCommonBasePython.new_itkAbortEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkAbortEvent

# Register itkAbortEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkAbortEvent_swigregister(itkAbortEvent)
class itkEndPickEvent(itkPickEvent):
    r"""Proxy of C++ itkEndPickEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkEndPickEvent self) -> itkEndPickEvent
        __init__(itkEndPickEvent self, itkEndPickEvent s) -> itkEndPickEvent
        """
        _ITKCommonBasePython.itkEndPickEvent_swiginit(self, _ITKCommonBasePython.new_itkEndPickEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkEndPickEvent

# Register itkEndPickEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkEndPickEvent_swigregister(itkEndPickEvent)
class itkFunctionAndGradientEvaluationIterationEvent(itkIterationEvent):
    r"""Proxy of C++ itkFunctionAndGradientEvaluationIterationEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkFunctionAndGradientEvaluationIterationEvent self) -> itkFunctionAndGradientEvaluationIterationEvent
        __init__(itkFunctionAndGradientEvaluationIterationEvent self, itkFunctionAndGradientEvaluationIterationEvent s) -> itkFunctionAndGradientEvaluationIterationEvent
        """
        _ITKCommonBasePython.itkFunctionAndGradientEvaluationIterationEvent_swiginit(self, _ITKCommonBasePython.new_itkFunctionAndGradientEvaluationIterationEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkFunctionAndGradientEvaluationIterationEvent

# Register itkFunctionAndGradientEvaluationIterationEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkFunctionAndGradientEvaluationIterationEvent_swigregister(itkFunctionAndGradientEvaluationIterationEvent)
class itkFunctionEvaluationIterationEvent(itkIterationEvent):
    r"""Proxy of C++ itkFunctionEvaluationIterationEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkFunctionEvaluationIterationEvent self) -> itkFunctionEvaluationIterationEvent
        __init__(itkFunctionEvaluationIterationEvent self, itkFunctionEvaluationIterationEvent s) -> itkFunctionEvaluationIterationEvent
        """
        _ITKCommonBasePython.itkFunctionEvaluationIterationEvent_swiginit(self, _ITKCommonBasePython.new_itkFunctionEvaluationIterationEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkFunctionEvaluationIterationEvent

# Register itkFunctionEvaluationIterationEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkFunctionEvaluationIterationEvent_swigregister(itkFunctionEvaluationIterationEvent)
class itkGradientEvaluationIterationEvent(itkIterationEvent):
    r"""Proxy of C++ itkGradientEvaluationIterationEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkGradientEvaluationIterationEvent self) -> itkGradientEvaluationIterationEvent
        __init__(itkGradientEvaluationIterationEvent self, itkGradientEvaluationIterationEvent s) -> itkGradientEvaluationIterationEvent
        """
        _ITKCommonBasePython.itkGradientEvaluationIterationEvent_swiginit(self, _ITKCommonBasePython.new_itkGradientEvaluationIterationEvent(*args))
    __swig_destroy__ = _ITKCommonBasePython.delete_itkGradientEvaluationIterationEvent

# Register itkGradientEvaluationIterationEvent in _ITKCommonBasePython:
_ITKCommonBasePython.itkGradientEvaluationIterationEvent_swigregister(itkGradientEvaluationIterationEvent)

