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

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

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

_swig_new_instance_method = _itkSpatialObjectBasePython.SWIG_PyInstanceMethod_New
_swig_new_static_method = _itkSpatialObjectBasePython.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 itkAffineGeometryFramePython
import itkScalableAffineTransformPython
import itkTransformBasePython
import itkSymmetricSecondRankTensorPython
import itkMatrixPython
import vnl_matrix_fixedPython
import vnl_matrixPython
import stdcomplexPython
import pyBasePython
import vnl_vectorPython
import itkCovariantVectorPython
import itkFixedArrayPython
import vnl_vector_refPython
import itkVectorPython
import itkPointPython
import itkDiffusionTensor3DPython
import itkVariableLengthVectorPython
import ITKCommonBasePython
import itkArray2DPython
import itkArrayPython
import itkOptimizerParametersPython
import itkAffineTransformPython
import itkMatrixOffsetTransformBasePython
import itkIndexPython
import itkSizePython
import itkOffsetPython
import itkSpatialObjectPropertyPython
import itkRGBAPixelPython
import itkImageRegionPython
import itkBoundingBoxPython
import itkMapContainerPython
import itkVectorContainerPython
import itkContinuousIndexPython

def itkSpatialObjectTreeNode3_New():
  return itkSpatialObjectTreeNode3.New()


def itkSpatialObjectTreeNode2_New():
  return itkSpatialObjectTreeNode2.New()


def itkTreeNodeSO3_New():
  return itkTreeNodeSO3.New()


def itkTreeNodeSO2_New():
  return itkTreeNodeSO2.New()


def itkCylinderSpatialObject_New():
  return itkCylinderSpatialObject.New()


def itkSpatialObject3_New():
  return itkSpatialObject3.New()


def itkSpatialObject2_New():
  return itkSpatialObject2.New()

class listitkSpatialObject2_Pointer(object):
    r"""Proxy of C++ std::list< itkSpatialObject2_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(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_iterator)
    def __iter__(self):
        return self.iterator()
    __nonzero__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___nonzero__)
    __bool__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___bool__)
    __len__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___len__)
    __getslice__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___getslice__)
    __setslice__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___setslice__)
    __delslice__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___delslice__)
    __delitem__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___delitem__)
    __getitem__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___getitem__)
    __setitem__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___setitem__)
    pop = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_pop)
    append = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_append)
    empty = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_empty)
    size = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_size)
    swap = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_swap)
    begin = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_begin)
    end = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_end)
    rbegin = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_rbegin)
    rend = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_rend)
    clear = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_clear)
    get_allocator = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_get_allocator)
    pop_back = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_pop_back)
    erase = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_erase)

    def __init__(self, *args):
        r"""
        __init__(listitkSpatialObject2_Pointer self) -> listitkSpatialObject2_Pointer
        __init__(listitkSpatialObject2_Pointer self, listitkSpatialObject2_Pointer other) -> listitkSpatialObject2_Pointer
        __init__(listitkSpatialObject2_Pointer self, std::list< itkSpatialObject2_Pointer >::size_type size) -> listitkSpatialObject2_Pointer
        __init__(listitkSpatialObject2_Pointer self, std::list< itkSpatialObject2_Pointer >::size_type size, std::list< itkSpatialObject2_Pointer >::value_type const & value) -> listitkSpatialObject2_Pointer
        """
        _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_swiginit(self, _itkSpatialObjectBasePython.new_listitkSpatialObject2_Pointer(*args))
    push_back = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_push_back)
    front = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_front)
    back = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_back)
    assign = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_assign)
    resize = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_resize)
    insert = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_insert)
    pop_front = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_pop_front)
    push_front = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_push_front)
    reverse = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_reverse)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_listitkSpatialObject2_Pointer

# Register listitkSpatialObject2_Pointer in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_swigregister(listitkSpatialObject2_Pointer)
class listitkSpatialObject3_Pointer(object):
    r"""Proxy of C++ std::list< itkSpatialObject3_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(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_iterator)
    def __iter__(self):
        return self.iterator()
    __nonzero__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___nonzero__)
    __bool__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___bool__)
    __len__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___len__)
    __getslice__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___getslice__)
    __setslice__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___setslice__)
    __delslice__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___delslice__)
    __delitem__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___delitem__)
    __getitem__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___getitem__)
    __setitem__ = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___setitem__)
    pop = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_pop)
    append = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_append)
    empty = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_empty)
    size = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_size)
    swap = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_swap)
    begin = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_begin)
    end = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_end)
    rbegin = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_rbegin)
    rend = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_rend)
    clear = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_clear)
    get_allocator = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_get_allocator)
    pop_back = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_pop_back)
    erase = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_erase)

    def __init__(self, *args):
        r"""
        __init__(listitkSpatialObject3_Pointer self) -> listitkSpatialObject3_Pointer
        __init__(listitkSpatialObject3_Pointer self, listitkSpatialObject3_Pointer other) -> listitkSpatialObject3_Pointer
        __init__(listitkSpatialObject3_Pointer self, std::list< itkSpatialObject3_Pointer >::size_type size) -> listitkSpatialObject3_Pointer
        __init__(listitkSpatialObject3_Pointer self, std::list< itkSpatialObject3_Pointer >::size_type size, std::list< itkSpatialObject3_Pointer >::value_type const & value) -> listitkSpatialObject3_Pointer
        """
        _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_swiginit(self, _itkSpatialObjectBasePython.new_listitkSpatialObject3_Pointer(*args))
    push_back = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_push_back)
    front = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_front)
    back = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_back)
    assign = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_assign)
    resize = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_resize)
    insert = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_insert)
    pop_front = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_pop_front)
    push_front = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_push_front)
    reverse = _swig_new_instance_method(_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_reverse)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_listitkSpatialObject3_Pointer

# Register listitkSpatialObject3_Pointer in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_swigregister(listitkSpatialObject3_Pointer)
class itkMetaEvent_Superclass(object):
    r"""Proxy of C++ itkMetaEvent_Superclass class."""

    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkMetaEvent_Superclass
    SetCurrentIteration = _swig_new_instance_method(_itkSpatialObjectBasePython.itkMetaEvent_Superclass_SetCurrentIteration)
    StartReading = _swig_new_instance_method(_itkSpatialObjectBasePython.itkMetaEvent_Superclass_StartReading)
    StopReading = _swig_new_instance_method(_itkSpatialObjectBasePython.itkMetaEvent_Superclass_StopReading)

    def __init__(self, *args):
        r"""
        __init__(itkMetaEvent_Superclass self) -> itkMetaEvent_Superclass
        __init__(itkMetaEvent_Superclass self, itkMetaEvent_Superclass arg0) -> itkMetaEvent_Superclass
        """
        _itkSpatialObjectBasePython.itkMetaEvent_Superclass_swiginit(self, _itkSpatialObjectBasePython.new_itkMetaEvent_Superclass(*args))

# Register itkMetaEvent_Superclass in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkMetaEvent_Superclass_swigregister(itkMetaEvent_Superclass)
class itkSpatialObject2(ITKCommonBasePython.itkDataObject):
    r"""Proxy of C++ itkSpatialObject2 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
    GetMaximumDepth = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetMaximumDepth)
    HasParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_HasParent)
    GetTypeName = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetTypeName)
    GetObjectDimension = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetObjectDimension)
    __New_orig__ = _swig_new_static_method(_itkSpatialObjectBasePython.itkSpatialObject2___New_orig__)
    Clone = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_Clone)
    SetAffineGeometryFrame = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetAffineGeometryFrame)
    GetModifiableAffineGeometryFrame = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetModifiableAffineGeometryFrame)
    GetAffineGeometryFrame = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetAffineGeometryFrame)
    SetObjectToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetObjectToWorldTransform)
    GetModifiableObjectToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetModifiableObjectToWorldTransform)
    GetObjectToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetObjectToWorldTransform)
    GetModifiableIndexToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetModifiableIndexToWorldTransform)
    GetIndexToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetIndexToWorldTransform)
    ComputeObjectToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_ComputeObjectToWorldTransform)
    ComputeObjectToParentTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_ComputeObjectToParentTransform)
    GetTransformMTime = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetTransformMTime)
    GetWorldTransformMTime = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetWorldTransformMTime)
    ValueAt = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_ValueAt)
    IsEvaluableAt = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_IsEvaluableAt)
    IsInside = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_IsInside)
    Evaluate = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_Evaluate)
    DerivativeAt = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_DerivativeAt)
    GetObjectMTime = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetObjectMTime)
    SetLargestPossibleRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetLargestPossibleRegion)
    GetLargestPossibleRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetLargestPossibleRegion)
    SetBufferedRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetBufferedRegion)
    GetBufferedRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetBufferedRegion)
    SetRequestedRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetRequestedRegion)
    GetRequestedRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetRequestedRegion)
    GetOffsetTable = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetOffsetTable)
    ComputeOffset = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_ComputeOffset)
    ComputeIndex = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_ComputeIndex)
    GetProperty = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetProperty)
    SetProperty = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetProperty)
    GetId = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetId)
    SetId = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetId)
    SetParentId = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetParentId)
    GetParentId = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetParentId)
    SetTreeNode = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetTreeNode)
    GetModifiableTreeNode = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetModifiableTreeNode)
    GetTreeNode = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetTreeNode)
    SetSpacing = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetSpacing)
    GetSpacing = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetSpacing)
    GetModifiableIndexToObjectTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetModifiableIndexToObjectTransform)
    GetIndexToObjectTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetIndexToObjectTransform)
    SetObjectToParentTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetObjectToParentTransform)
    GetObjectToParentTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetObjectToParentTransform)
    GetObjectToNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetObjectToNodeTransform)
    AddSpatialObject = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_AddSpatialObject)
    RemoveSpatialObject = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_RemoveSpatialObject)
    GetParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetParent)
    GetChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetChildren)
    GetNumberOfChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetNumberOfChildren)
    SetChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetChildren)
    Clear = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_Clear)
    ComputeBoundingBox = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_ComputeBoundingBox)
    ComputeLocalBoundingBox = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_ComputeLocalBoundingBox)
    GetBoundingBox = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetBoundingBox)
    SetBoundingBoxChildrenDepth = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetBoundingBoxChildrenDepth)
    GetBoundingBoxChildrenDepth = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetBoundingBoxChildrenDepth)
    SetBoundingBoxChildrenName = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetBoundingBoxChildrenName)
    GetBoundingBoxChildrenName = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetBoundingBoxChildrenName)
    SetParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetParent)
    SetNodeToParentNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetNodeToParentNodeTransform)
    GetNodeToParentNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetNodeToParentNodeTransform)
    SetDefaultInsideValue = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetDefaultInsideValue)
    GetDefaultInsideValue = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetDefaultInsideValue)
    SetDefaultOutsideValue = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_SetDefaultOutsideValue)
    GetDefaultOutsideValue = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetDefaultOutsideValue)
    GetSpatialObjectTypeAsString = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetSpatialObjectTypeAsString)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkSpatialObject2
    cast = _swig_new_static_method(_itkSpatialObjectBasePython.itkSpatialObject2_cast)
    GetPointer = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject2_GetPointer)

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

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

          itkSpatialObject2.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkSpatialObject2 in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkSpatialObject2_swigregister(itkSpatialObject2)
class itkSpatialObject3(ITKCommonBasePython.itkDataObject):
    r"""Proxy of C++ itkSpatialObject3 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
    GetMaximumDepth = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetMaximumDepth)
    HasParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_HasParent)
    GetTypeName = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetTypeName)
    GetObjectDimension = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetObjectDimension)
    __New_orig__ = _swig_new_static_method(_itkSpatialObjectBasePython.itkSpatialObject3___New_orig__)
    Clone = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_Clone)
    SetAffineGeometryFrame = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetAffineGeometryFrame)
    GetModifiableAffineGeometryFrame = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetModifiableAffineGeometryFrame)
    GetAffineGeometryFrame = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetAffineGeometryFrame)
    SetObjectToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetObjectToWorldTransform)
    GetModifiableObjectToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetModifiableObjectToWorldTransform)
    GetObjectToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetObjectToWorldTransform)
    GetModifiableIndexToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetModifiableIndexToWorldTransform)
    GetIndexToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetIndexToWorldTransform)
    ComputeObjectToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_ComputeObjectToWorldTransform)
    ComputeObjectToParentTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_ComputeObjectToParentTransform)
    GetTransformMTime = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetTransformMTime)
    GetWorldTransformMTime = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetWorldTransformMTime)
    ValueAt = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_ValueAt)
    IsEvaluableAt = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_IsEvaluableAt)
    IsInside = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_IsInside)
    Evaluate = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_Evaluate)
    DerivativeAt = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_DerivativeAt)
    GetObjectMTime = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetObjectMTime)
    SetLargestPossibleRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetLargestPossibleRegion)
    GetLargestPossibleRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetLargestPossibleRegion)
    SetBufferedRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetBufferedRegion)
    GetBufferedRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetBufferedRegion)
    SetRequestedRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetRequestedRegion)
    GetRequestedRegion = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetRequestedRegion)
    GetOffsetTable = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetOffsetTable)
    ComputeOffset = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_ComputeOffset)
    ComputeIndex = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_ComputeIndex)
    GetProperty = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetProperty)
    SetProperty = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetProperty)
    GetId = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetId)
    SetId = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetId)
    SetParentId = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetParentId)
    GetParentId = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetParentId)
    SetTreeNode = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetTreeNode)
    GetModifiableTreeNode = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetModifiableTreeNode)
    GetTreeNode = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetTreeNode)
    SetSpacing = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetSpacing)
    GetSpacing = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetSpacing)
    GetModifiableIndexToObjectTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetModifiableIndexToObjectTransform)
    GetIndexToObjectTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetIndexToObjectTransform)
    SetObjectToParentTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetObjectToParentTransform)
    GetObjectToParentTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetObjectToParentTransform)
    GetObjectToNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetObjectToNodeTransform)
    AddSpatialObject = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_AddSpatialObject)
    RemoveSpatialObject = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_RemoveSpatialObject)
    GetParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetParent)
    GetChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetChildren)
    GetNumberOfChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetNumberOfChildren)
    SetChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetChildren)
    Clear = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_Clear)
    ComputeBoundingBox = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_ComputeBoundingBox)
    ComputeLocalBoundingBox = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_ComputeLocalBoundingBox)
    GetBoundingBox = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetBoundingBox)
    SetBoundingBoxChildrenDepth = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetBoundingBoxChildrenDepth)
    GetBoundingBoxChildrenDepth = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetBoundingBoxChildrenDepth)
    SetBoundingBoxChildrenName = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetBoundingBoxChildrenName)
    GetBoundingBoxChildrenName = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetBoundingBoxChildrenName)
    SetParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetParent)
    SetNodeToParentNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetNodeToParentNodeTransform)
    GetNodeToParentNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetNodeToParentNodeTransform)
    SetDefaultInsideValue = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetDefaultInsideValue)
    GetDefaultInsideValue = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetDefaultInsideValue)
    SetDefaultOutsideValue = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_SetDefaultOutsideValue)
    GetDefaultOutsideValue = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetDefaultOutsideValue)
    GetSpatialObjectTypeAsString = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetSpatialObjectTypeAsString)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkSpatialObject3
    cast = _swig_new_static_method(_itkSpatialObjectBasePython.itkSpatialObject3_cast)
    GetPointer = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObject3_GetPointer)

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

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

          itkSpatialObject3.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkSpatialObject3 in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkSpatialObject3_swigregister(itkSpatialObject3)
class itkTreeNodeSO2(ITKCommonBasePython.itkObject):
    r"""Proxy of C++ itkTreeNodeSO2 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(_itkSpatialObjectBasePython.itkTreeNodeSO2___New_orig__)
    Clone = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_Clone)
    Get = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_Get)
    Set = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_Set)
    GetChild = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_GetChild)
    GetParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_GetParent)
    HasChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_HasChildren)
    HasParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_HasParent)
    SetParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_SetParent)
    CountChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_CountChildren)
    Remove = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_Remove)
    GetNumberOfChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_GetNumberOfChildren)
    ReplaceChild = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_ReplaceChild)
    ChildPosition = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_ChildPosition)
    AddChild = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_AddChild)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkTreeNodeSO2
    cast = _swig_new_static_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_cast)
    GetPointer = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO2_GetPointer)

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

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

          itkTreeNodeSO2.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkTreeNodeSO2 in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkTreeNodeSO2_swigregister(itkTreeNodeSO2)
class itkTreeNodeSO3(ITKCommonBasePython.itkObject):
    r"""Proxy of C++ itkTreeNodeSO3 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(_itkSpatialObjectBasePython.itkTreeNodeSO3___New_orig__)
    Clone = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_Clone)
    Get = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_Get)
    Set = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_Set)
    GetChild = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_GetChild)
    GetParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_GetParent)
    HasChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_HasChildren)
    HasParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_HasParent)
    SetParent = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_SetParent)
    CountChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_CountChildren)
    Remove = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_Remove)
    GetNumberOfChildren = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_GetNumberOfChildren)
    ReplaceChild = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_ReplaceChild)
    ChildPosition = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_ChildPosition)
    AddChild = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_AddChild)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkTreeNodeSO3
    cast = _swig_new_static_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_cast)
    GetPointer = _swig_new_instance_method(_itkSpatialObjectBasePython.itkTreeNodeSO3_GetPointer)

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

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

          itkTreeNodeSO3.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkTreeNodeSO3 in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkTreeNodeSO3_swigregister(itkTreeNodeSO3)
class itkCylinderSpatialObject(itkSpatialObject3):
    r"""Proxy of C++ itkCylinderSpatialObject 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(_itkSpatialObjectBasePython.itkCylinderSpatialObject___New_orig__)
    Clone = _swig_new_instance_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_Clone)
    SetRadius = _swig_new_instance_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_SetRadius)
    GetRadius = _swig_new_instance_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_GetRadius)
    SetHeight = _swig_new_instance_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_SetHeight)
    GetHeight = _swig_new_instance_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_GetHeight)
    ValueAt = _swig_new_instance_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_ValueAt)
    IsEvaluableAt = _swig_new_instance_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_IsEvaluableAt)
    IsInside = _swig_new_instance_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_IsInside)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkCylinderSpatialObject
    cast = _swig_new_static_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_cast)
    GetPointer = _swig_new_instance_method(_itkSpatialObjectBasePython.itkCylinderSpatialObject_GetPointer)

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

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

          itkCylinderSpatialObject.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkCylinderSpatialObject in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkCylinderSpatialObject_swigregister(itkCylinderSpatialObject)
class itkMetaEvent(itkMetaEvent_Superclass):
    r"""Proxy of C++ itkMetaEvent class."""

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

    def __init__(self, *args):
        r"""
        __init__(itkMetaEvent self) -> itkMetaEvent
        __init__(itkMetaEvent self, itkMetaEvent arg0) -> itkMetaEvent
        """
        _itkSpatialObjectBasePython.itkMetaEvent_swiginit(self, _itkSpatialObjectBasePython.new_itkMetaEvent(*args))

# Register itkMetaEvent in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkMetaEvent_swigregister(itkMetaEvent)
class itkSpatialObjectTreeNode2(itkTreeNodeSO2):
    r"""Proxy of C++ itkSpatialObjectTreeNode2 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(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2___New_orig__)
    Clone = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_Clone)
    SetData = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_SetData)
    SetNodeToParentNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_SetNodeToParentNodeTransform)
    GetNodeToParentNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_GetNodeToParentNodeTransform)
    SetNodeToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_SetNodeToWorldTransform)
    GetNodeToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_GetNodeToWorldTransform)
    ComputeNodeToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_ComputeNodeToWorldTransform)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkSpatialObjectTreeNode2
    cast = _swig_new_static_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_cast)
    GetPointer = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_GetPointer)

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

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

          itkSpatialObjectTreeNode2.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkSpatialObjectTreeNode2 in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkSpatialObjectTreeNode2_swigregister(itkSpatialObjectTreeNode2)
class itkSpatialObjectTreeNode3(itkTreeNodeSO3):
    r"""Proxy of C++ itkSpatialObjectTreeNode3 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(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3___New_orig__)
    Clone = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_Clone)
    SetData = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_SetData)
    SetNodeToParentNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_SetNodeToParentNodeTransform)
    GetNodeToParentNodeTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_GetNodeToParentNodeTransform)
    SetNodeToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_SetNodeToWorldTransform)
    GetNodeToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_GetNodeToWorldTransform)
    ComputeNodeToWorldTransform = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_ComputeNodeToWorldTransform)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkSpatialObjectTreeNode3
    cast = _swig_new_static_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_cast)
    GetPointer = _swig_new_instance_method(_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_GetPointer)

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

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

          itkSpatialObjectTreeNode3.New( reader, Threshold=10 )

        is (most of the time) equivalent to:

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


# Register itkSpatialObjectTreeNode3 in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkSpatialObjectTreeNode3_swigregister(itkSpatialObjectTreeNode3)

