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


import collections

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

from . import _ITKCommonPython


from . import _ITKSpatialObjectsPython



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

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

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


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


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


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


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


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

import itk.ITKCommonBasePython
import itk.itkMatrixPython
import itk.itkCovariantVectorPython
import itk.vnl_vector_refPython
import itk.stdcomplexPython
import itk.pyBasePython
import itk.vnl_vectorPython
import itk.vnl_matrixPython
import itk.itkVectorPython
import itk.itkFixedArrayPython
import itk.vnl_matrix_fixedPython
import itk.itkPointPython
import itk.itkImageRegionPython
import itk.itkIndexPython
import itk.itkOffsetPython
import itk.itkSizePython
import itk.itkBoundingBoxPython
import itk.itkVectorContainerPython
import itk.itkContinuousIndexPython
import itk.itkArrayPython
import itk.itkMapContainerPython
import itk.itkSpatialObjectPropertyPython
import itk.itkRGBAPixelPython
import itk.itkAffineTransformPython
import itk.itkTransformBasePython
import itk.itkSymmetricSecondRankTensorPython
import itk.itkArray2DPython
import itk.itkVariableLengthVectorPython
import itk.itkOptimizerParametersPython
import itk.itkDiffusionTensor3DPython
import itk.itkMatrixOffsetTransformBasePython
class listitkSpatialObject2_Pointer(collections.abc.MutableSequence if _swig_python_version_info >= (3, 3) else collections.MutableSequence):
    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

    def iterator(self):
        r"""iterator(self) -> SwigPyIterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        r"""__nonzero__(self) -> bool"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___nonzero__(self)

    def __bool__(self):
        r"""__bool__(self) -> bool"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___bool__(self)

    def __len__(self):
        r"""__len__(self) -> std::list< itkSpatialObject2_Pointer >::size_type"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___len__(self)

    def __getslice__(self, i, j):
        r"""
        __getslice__(self, i, j) -> listitkSpatialObject2_Pointer

        Parameters
        ----------
        i: std::list< itkSpatialObject2_Pointer >::difference_type
        j: std::list< itkSpatialObject2_Pointer >::difference_type

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___getslice__(self, i, j)

    def __setslice__(self, *args):
        r"""
        __setslice__(self, i, j)

        Parameters
        ----------
        i: std::list< itkSpatialObject2_Pointer >::difference_type
        j: std::list< itkSpatialObject2_Pointer >::difference_type

        __setslice__(self, i, j, v)

        Parameters
        ----------
        i: std::list< itkSpatialObject2_Pointer >::difference_type
        j: std::list< itkSpatialObject2_Pointer >::difference_type
        v: std::list< itkSpatialObject2_Pointer,std::allocator< itkSpatialObject2_Pointer > > const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___setslice__(self, *args)

    def __delslice__(self, i, j):
        r"""
        __delslice__(self, i, j)

        Parameters
        ----------
        i: std::list< itkSpatialObject2_Pointer >::difference_type
        j: std::list< itkSpatialObject2_Pointer >::difference_type

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___delslice__(self, i, j)

    def __delitem__(self, *args):
        r"""
        __delitem__(self, i)

        Parameters
        ----------
        i: std::list< itkSpatialObject2_Pointer >::difference_type

        __delitem__(self, slice)

        Parameters
        ----------
        slice: SWIGPY_SLICEOBJECT *

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___delitem__(self, *args)

    def __getitem__(self, *args):
        r"""
        __getitem__(self, slice) -> listitkSpatialObject2_Pointer

        Parameters
        ----------
        slice: SWIGPY_SLICEOBJECT *

        __getitem__(self, i) -> std::list< itkSpatialObject2_Pointer >::value_type const &

        Parameters
        ----------
        i: std::list< itkSpatialObject2_Pointer >::difference_type

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___getitem__(self, *args)

    def __setitem__(self, *args):
        r"""
        __setitem__(self, slice, v)

        Parameters
        ----------
        slice: SWIGPY_SLICEOBJECT *
        v: std::list< itkSpatialObject2_Pointer,std::allocator< itkSpatialObject2_Pointer > > const &

        __setitem__(self, slice)

        Parameters
        ----------
        slice: SWIGPY_SLICEOBJECT *

        __setitem__(self, i, x)

        Parameters
        ----------
        i: std::list< itkSpatialObject2_Pointer >::difference_type
        x: std::list< itkSpatialObject2_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer___setitem__(self, *args)

    def pop(self):
        r"""pop(self) -> std::list< itkSpatialObject2_Pointer >::value_type"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_pop(self)

    def append(self, x):
        r"""
        append(self, x)

        Parameters
        ----------
        x: std::list< itkSpatialObject2_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_append(self, x)

    def empty(self):
        r"""empty(self) -> bool"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_empty(self)

    def size(self):
        r"""size(self) -> std::list< itkSpatialObject2_Pointer >::size_type"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_size(self)

    def swap(self, v):
        r"""
        swap(self, v)

        Parameters
        ----------
        v: std::list< itkSpatialObject2_Pointer > &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_swap(self, v)

    def begin(self):
        r"""begin(self) -> std::list< itkSpatialObject2_Pointer >::iterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_begin(self)

    def end(self):
        r"""end(self) -> std::list< itkSpatialObject2_Pointer >::iterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_end(self)

    def rbegin(self):
        r"""rbegin(self) -> std::list< itkSpatialObject2_Pointer >::reverse_iterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_rbegin(self)

    def rend(self):
        r"""rend(self) -> std::list< itkSpatialObject2_Pointer >::reverse_iterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_rend(self)

    def clear(self):
        r"""clear(self)"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_clear(self)

    def get_allocator(self):
        r"""get_allocator(self) -> std::list< itkSpatialObject2_Pointer >::allocator_type"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_get_allocator(self)

    def pop_back(self):
        r"""pop_back(self)"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_pop_back(self)

    def erase(self, *args):
        r"""
        erase(self, pos) -> std::list< itkSpatialObject2_Pointer >::iterator

        Parameters
        ----------
        pos: std::list< itkSpatialObject2_Pointer >::iterator

        erase(self, first, last) -> std::list< itkSpatialObject2_Pointer >::iterator

        Parameters
        ----------
        first: std::list< itkSpatialObject2_Pointer >::iterator
        last: std::list< itkSpatialObject2_Pointer >::iterator

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_erase(self, *args)

    def __init__(self, *args):
        r"""
        __init__(self) -> listitkSpatialObject2_Pointer
        __init__(self, other) -> listitkSpatialObject2_Pointer

        Parameters
        ----------
        other: std::list< itkSpatialObject2_Pointer > const &

        __init__(self, size) -> listitkSpatialObject2_Pointer

        Parameters
        ----------
        size: std::list< itkSpatialObject2_Pointer >::size_type

        __init__(self, size, value) -> listitkSpatialObject2_Pointer

        Parameters
        ----------
        size: std::list< itkSpatialObject2_Pointer >::size_type
        value: std::list< itkSpatialObject2_Pointer >::value_type const &

        """
        _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_swiginit(self, _itkSpatialObjectBasePython.new_listitkSpatialObject2_Pointer(*args))

    def push_back(self, x):
        r"""
        push_back(self, x)

        Parameters
        ----------
        x: std::list< itkSpatialObject2_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_push_back(self, x)

    def front(self):
        r"""front(self) -> std::list< itkSpatialObject2_Pointer >::value_type const &"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_front(self)

    def back(self):
        r"""back(self) -> std::list< itkSpatialObject2_Pointer >::value_type const &"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_back(self)

    def assign(self, n, x):
        r"""
        assign(self, n, x)

        Parameters
        ----------
        n: std::list< itkSpatialObject2_Pointer >::size_type
        x: std::list< itkSpatialObject2_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_assign(self, n, x)

    def resize(self, *args):
        r"""
        resize(self, new_size)

        Parameters
        ----------
        new_size: std::list< itkSpatialObject2_Pointer >::size_type

        resize(self, new_size, x)

        Parameters
        ----------
        new_size: std::list< itkSpatialObject2_Pointer >::size_type
        x: std::list< itkSpatialObject2_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_resize(self, *args)

    def insert(self, *args):
        r"""
        insert(self, pos, x) -> std::list< itkSpatialObject2_Pointer >::iterator

        Parameters
        ----------
        pos: std::list< itkSpatialObject2_Pointer >::iterator
        x: std::list< itkSpatialObject2_Pointer >::value_type const &

        insert(self, pos, n, x)

        Parameters
        ----------
        pos: std::list< itkSpatialObject2_Pointer >::iterator
        n: std::list< itkSpatialObject2_Pointer >::size_type
        x: std::list< itkSpatialObject2_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_insert(self, *args)

    def pop_front(self):
        r"""pop_front(self)"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_pop_front(self)

    def push_front(self, x):
        r"""
        push_front(self, x)

        Parameters
        ----------
        x: std::list< itkSpatialObject2_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_push_front(self, x)

    def reverse(self):
        r"""reverse(self)"""
        return _itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_reverse(self)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_listitkSpatialObject2_Pointer

# Register listitkSpatialObject2_Pointer in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.listitkSpatialObject2_Pointer_swigregister(listitkSpatialObject2_Pointer)
class listitkSpatialObject3_Pointer(collections.abc.MutableSequence if _swig_python_version_info >= (3, 3) else collections.MutableSequence):
    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

    def iterator(self):
        r"""iterator(self) -> SwigPyIterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        r"""__nonzero__(self) -> bool"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___nonzero__(self)

    def __bool__(self):
        r"""__bool__(self) -> bool"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___bool__(self)

    def __len__(self):
        r"""__len__(self) -> std::list< itkSpatialObject3_Pointer >::size_type"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___len__(self)

    def __getslice__(self, i, j):
        r"""
        __getslice__(self, i, j) -> listitkSpatialObject3_Pointer

        Parameters
        ----------
        i: std::list< itkSpatialObject3_Pointer >::difference_type
        j: std::list< itkSpatialObject3_Pointer >::difference_type

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___getslice__(self, i, j)

    def __setslice__(self, *args):
        r"""
        __setslice__(self, i, j)

        Parameters
        ----------
        i: std::list< itkSpatialObject3_Pointer >::difference_type
        j: std::list< itkSpatialObject3_Pointer >::difference_type

        __setslice__(self, i, j, v)

        Parameters
        ----------
        i: std::list< itkSpatialObject3_Pointer >::difference_type
        j: std::list< itkSpatialObject3_Pointer >::difference_type
        v: std::list< itkSpatialObject3_Pointer,std::allocator< itkSpatialObject3_Pointer > > const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___setslice__(self, *args)

    def __delslice__(self, i, j):
        r"""
        __delslice__(self, i, j)

        Parameters
        ----------
        i: std::list< itkSpatialObject3_Pointer >::difference_type
        j: std::list< itkSpatialObject3_Pointer >::difference_type

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___delslice__(self, i, j)

    def __delitem__(self, *args):
        r"""
        __delitem__(self, i)

        Parameters
        ----------
        i: std::list< itkSpatialObject3_Pointer >::difference_type

        __delitem__(self, slice)

        Parameters
        ----------
        slice: SWIGPY_SLICEOBJECT *

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___delitem__(self, *args)

    def __getitem__(self, *args):
        r"""
        __getitem__(self, slice) -> listitkSpatialObject3_Pointer

        Parameters
        ----------
        slice: SWIGPY_SLICEOBJECT *

        __getitem__(self, i) -> std::list< itkSpatialObject3_Pointer >::value_type const &

        Parameters
        ----------
        i: std::list< itkSpatialObject3_Pointer >::difference_type

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___getitem__(self, *args)

    def __setitem__(self, *args):
        r"""
        __setitem__(self, slice, v)

        Parameters
        ----------
        slice: SWIGPY_SLICEOBJECT *
        v: std::list< itkSpatialObject3_Pointer,std::allocator< itkSpatialObject3_Pointer > > const &

        __setitem__(self, slice)

        Parameters
        ----------
        slice: SWIGPY_SLICEOBJECT *

        __setitem__(self, i, x)

        Parameters
        ----------
        i: std::list< itkSpatialObject3_Pointer >::difference_type
        x: std::list< itkSpatialObject3_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer___setitem__(self, *args)

    def pop(self):
        r"""pop(self) -> std::list< itkSpatialObject3_Pointer >::value_type"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_pop(self)

    def append(self, x):
        r"""
        append(self, x)

        Parameters
        ----------
        x: std::list< itkSpatialObject3_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_append(self, x)

    def empty(self):
        r"""empty(self) -> bool"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_empty(self)

    def size(self):
        r"""size(self) -> std::list< itkSpatialObject3_Pointer >::size_type"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_size(self)

    def swap(self, v):
        r"""
        swap(self, v)

        Parameters
        ----------
        v: std::list< itkSpatialObject3_Pointer > &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_swap(self, v)

    def begin(self):
        r"""begin(self) -> std::list< itkSpatialObject3_Pointer >::iterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_begin(self)

    def end(self):
        r"""end(self) -> std::list< itkSpatialObject3_Pointer >::iterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_end(self)

    def rbegin(self):
        r"""rbegin(self) -> std::list< itkSpatialObject3_Pointer >::reverse_iterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_rbegin(self)

    def rend(self):
        r"""rend(self) -> std::list< itkSpatialObject3_Pointer >::reverse_iterator"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_rend(self)

    def clear(self):
        r"""clear(self)"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_clear(self)

    def get_allocator(self):
        r"""get_allocator(self) -> std::list< itkSpatialObject3_Pointer >::allocator_type"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_get_allocator(self)

    def pop_back(self):
        r"""pop_back(self)"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_pop_back(self)

    def erase(self, *args):
        r"""
        erase(self, pos) -> std::list< itkSpatialObject3_Pointer >::iterator

        Parameters
        ----------
        pos: std::list< itkSpatialObject3_Pointer >::iterator

        erase(self, first, last) -> std::list< itkSpatialObject3_Pointer >::iterator

        Parameters
        ----------
        first: std::list< itkSpatialObject3_Pointer >::iterator
        last: std::list< itkSpatialObject3_Pointer >::iterator

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_erase(self, *args)

    def __init__(self, *args):
        r"""
        __init__(self) -> listitkSpatialObject3_Pointer
        __init__(self, other) -> listitkSpatialObject3_Pointer

        Parameters
        ----------
        other: std::list< itkSpatialObject3_Pointer > const &

        __init__(self, size) -> listitkSpatialObject3_Pointer

        Parameters
        ----------
        size: std::list< itkSpatialObject3_Pointer >::size_type

        __init__(self, size, value) -> listitkSpatialObject3_Pointer

        Parameters
        ----------
        size: std::list< itkSpatialObject3_Pointer >::size_type
        value: std::list< itkSpatialObject3_Pointer >::value_type const &

        """
        _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_swiginit(self, _itkSpatialObjectBasePython.new_listitkSpatialObject3_Pointer(*args))

    def push_back(self, x):
        r"""
        push_back(self, x)

        Parameters
        ----------
        x: std::list< itkSpatialObject3_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_push_back(self, x)

    def front(self):
        r"""front(self) -> std::list< itkSpatialObject3_Pointer >::value_type const &"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_front(self)

    def back(self):
        r"""back(self) -> std::list< itkSpatialObject3_Pointer >::value_type const &"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_back(self)

    def assign(self, n, x):
        r"""
        assign(self, n, x)

        Parameters
        ----------
        n: std::list< itkSpatialObject3_Pointer >::size_type
        x: std::list< itkSpatialObject3_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_assign(self, n, x)

    def resize(self, *args):
        r"""
        resize(self, new_size)

        Parameters
        ----------
        new_size: std::list< itkSpatialObject3_Pointer >::size_type

        resize(self, new_size, x)

        Parameters
        ----------
        new_size: std::list< itkSpatialObject3_Pointer >::size_type
        x: std::list< itkSpatialObject3_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_resize(self, *args)

    def insert(self, *args):
        r"""
        insert(self, pos, x) -> std::list< itkSpatialObject3_Pointer >::iterator

        Parameters
        ----------
        pos: std::list< itkSpatialObject3_Pointer >::iterator
        x: std::list< itkSpatialObject3_Pointer >::value_type const &

        insert(self, pos, n, x)

        Parameters
        ----------
        pos: std::list< itkSpatialObject3_Pointer >::iterator
        n: std::list< itkSpatialObject3_Pointer >::size_type
        x: std::list< itkSpatialObject3_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_insert(self, *args)

    def pop_front(self):
        r"""pop_front(self)"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_pop_front(self)

    def push_front(self, x):
        r"""
        push_front(self, x)

        Parameters
        ----------
        x: std::list< itkSpatialObject3_Pointer >::value_type const &

        """
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_push_front(self, x)

    def reverse(self):
        r"""reverse(self)"""
        return _itkSpatialObjectBasePython.listitkSpatialObject3_Pointer_reverse(self)
    __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

    def SetCurrentIteration(self, n):
        r"""
        SetCurrentIteration(self, n)

        Parameters
        ----------
        n: unsigned int

        """
        return _itkSpatialObjectBasePython.itkMetaEvent_Superclass_SetCurrentIteration(self, n)

    def StartReading(self, n):
        r"""
        StartReading(self, n)

        Parameters
        ----------
        n: unsigned int

        """
        return _itkSpatialObjectBasePython.itkMetaEvent_Superclass_StartReading(self, n)

    def StopReading(self):
        r"""StopReading(self)"""
        return _itkSpatialObjectBasePython.itkMetaEvent_Superclass_StopReading(self)

    def __init__(self, *args):
        r"""
        __init__(self) -> itkMetaEvent_Superclass
        __init__(self, arg0) -> itkMetaEvent_Superclass

        Parameters
        ----------
        arg0: itkMetaEvent_Superclass const &

        """
        _itkSpatialObjectBasePython.itkMetaEvent_Superclass_swiginit(self, _itkSpatialObjectBasePython.new_itkMetaEvent_Superclass(*args))

# Register itkMetaEvent_Superclass in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkMetaEvent_Superclass_swigregister(itkMetaEvent_Superclass)

def itkSpatialObject2_New():
    return itkSpatialObject2.New()

class itkSpatialObject2(itk.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

    def GetMaximumDepth(self):
        r"""GetMaximumDepth(self) -> unsigned int"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetMaximumDepth(self)

    def GetObjectDimension(self):
        r"""GetObjectDimension(self) -> unsigned int"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetObjectDimension(self)

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkSpatialObject2_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject2___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkSpatialObject2_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_Clone(self)

    def SetId(self, id):
        r"""
        SetId(self, id)

        Parameters
        ----------
        id: int

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetId(self, id)

    def GetId(self):
        r"""GetId(self) -> int const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetId(self)

    def SetTypeName(self, _arg):
        r"""
        SetTypeName(self, _arg)

        Parameters
        ----------
        _arg: std::string

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetTypeName(self, _arg)

    def GetTypeName(self):
        r"""GetTypeName(self) -> std::string const"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetTypeName(self)

    def GetClassNameAndDimension(self):
        r"""GetClassNameAndDimension(self) -> std::string"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetClassNameAndDimension(self)

    def Clear(self):
        r"""Clear(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_Clear(self)

    def SetProperty(self, property):
        r"""
        SetProperty(self, property)

        Parameters
        ----------
        property: itkSpatialObjectProperty const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetProperty(self, property)

    def GetProperty(self, *args):
        r"""
        GetProperty(self) -> itkSpatialObjectProperty
        GetProperty(self) -> itkSpatialObjectProperty
        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetProperty(self, *args)

    def GetMyMTime(self):
        r"""GetMyMTime(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetMyMTime(self)

    def SetObjectToWorldTransform(self, transform):
        r"""
        SetObjectToWorldTransform(self, transform)

        Parameters
        ----------
        transform: itkAffineTransformD2 const *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetObjectToWorldTransform(self, transform)

    def GetModifiableObjectToWorldTransform(self):
        r"""GetModifiableObjectToWorldTransform(self) -> itkAffineTransformD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetModifiableObjectToWorldTransform(self)

    def GetObjectToWorldTransform(self, *args):
        r"""
        GetObjectToWorldTransform(self) -> itkAffineTransformD2
        GetObjectToWorldTransform(self) -> itkAffineTransformD2
        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetObjectToWorldTransform(self, *args)

    def GetObjectToWorldTransformInverse(self):
        r"""GetObjectToWorldTransformInverse(self) -> itkAffineTransformD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetObjectToWorldTransformInverse(self)

    def SetObjectToParentTransform(self, transform):
        r"""
        SetObjectToParentTransform(self, transform)

        Parameters
        ----------
        transform: itkAffineTransformD2 const *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetObjectToParentTransform(self, transform)

    def GetModifiableObjectToParentTransform(self):
        r"""GetModifiableObjectToParentTransform(self) -> itkAffineTransformD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetModifiableObjectToParentTransform(self)

    def GetObjectToParentTransform(self, *args):
        r"""
        GetObjectToParentTransform(self) -> itkAffineTransformD2
        GetObjectToParentTransform(self) -> itkAffineTransformD2
        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetObjectToParentTransform(self, *args)

    def GetObjectToParentTransformInverse(self):
        r"""GetObjectToParentTransformInverse(self) -> itkAffineTransformD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetObjectToParentTransformInverse(self)

    def ComputeObjectToParentTransform(self):
        r"""ComputeObjectToParentTransform(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ComputeObjectToParentTransform(self)

    def IsInsideInObjectSpace(self, *args):
        r"""
        IsInsideInObjectSpace(self, point, depth, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        IsInsideInObjectSpace(self, point) -> bool

        Parameters
        ----------
        point: itkPointD2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_IsInsideInObjectSpace(self, *args)

    def ValueAtInObjectSpace(self, *args):
        r"""
        ValueAtInObjectSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ValueAtInObjectSpace(self, *args)

    def IsEvaluableAtInObjectSpace(self, *args):
        r"""
        IsEvaluableAtInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_IsEvaluableAtInObjectSpace(self, *args)

    def IsInsideChildrenInObjectSpace(self, *args):
        r"""
        IsInsideChildrenInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_IsInsideChildrenInObjectSpace(self, *args)

    def ValueAtChildrenInObjectSpace(self, *args):
        r"""
        ValueAtChildrenInObjectSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ValueAtChildrenInObjectSpace(self, *args)

    def IsEvaluableAtChildrenInObjectSpace(self, *args):
        r"""
        IsEvaluableAtChildrenInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_IsEvaluableAtChildrenInObjectSpace(self, *args)

    def SetDefaultInsideValue(self, _arg):
        r"""
        SetDefaultInsideValue(self, _arg)

        Parameters
        ----------
        _arg: double

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetDefaultInsideValue(self, _arg)

    def GetDefaultInsideValue(self):
        r"""GetDefaultInsideValue(self) -> double"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetDefaultInsideValue(self)

    def SetDefaultOutsideValue(self, _arg):
        r"""
        SetDefaultOutsideValue(self, _arg)

        Parameters
        ----------
        _arg: double

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetDefaultOutsideValue(self, _arg)

    def GetDefaultOutsideValue(self):
        r"""GetDefaultOutsideValue(self) -> double"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetDefaultOutsideValue(self)

    def ValueAtInWorldSpace(self, *args):
        r"""
        ValueAtInWorldSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ValueAtInWorldSpace(self, *args)

    def IsInsideInWorldSpace(self, *args):
        r"""
        IsInsideInWorldSpace(self, point, depth, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        IsInsideInWorldSpace(self, point) -> bool

        Parameters
        ----------
        point: itkPointD2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_IsInsideInWorldSpace(self, *args)

    def IsEvaluableAtInWorldSpace(self, *args):
        r"""
        IsEvaluableAtInWorldSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_IsEvaluableAtInWorldSpace(self, *args)

    def DerivativeAtInObjectSpace(self, *args):
        r"""
        DerivativeAtInObjectSpace(self, point, order, value, depth=0, name="", offset=MakeFilled< DerivativeOffsetType >(1))

        Parameters
        ----------
        point: itkPointD2 const &
        order: unsigned short
        value: itkCovariantVectorD2 &
        depth: unsigned int
        name: std::string const &
        offset: itkVectorD2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_DerivativeAtInObjectSpace(self, *args)

    def DerivativeAtInWorldSpace(self, *args):
        r"""
        DerivativeAtInWorldSpace(self, point, order, value, depth=0, name="", offset=MakeFilled< DerivativeOffsetType >(1))

        Parameters
        ----------
        point: itkPointD2 const &
        order: unsigned short
        value: itkCovariantVectorD2 &
        depth: unsigned int
        name: std::string const &
        offset: itkVectorD2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_DerivativeAtInWorldSpace(self, *args)

    def SetParent(self, parent):
        r"""
        SetParent(self, parent)

        Parameters
        ----------
        parent: itkSpatialObject2 *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetParent(self, parent)

    def HasParent(self):
        r"""HasParent(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_HasParent(self)

    def GetParent(self, *args):
        r"""
        GetParent(self) -> itkSpatialObject2
        GetParent(self) -> itkSpatialObject2
        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetParent(self, *args)

    def SetParentId(self, _arg):
        r"""
        SetParentId(self, _arg)

        Parameters
        ----------
        _arg: int

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetParentId(self, _arg)

    def GetParentId(self):
        r"""GetParentId(self) -> int const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetParentId(self)

    def SetChildren(self, children):
        r"""
        SetChildren(self, children)

        Parameters
        ----------
        children: std::list< itkSpatialObject2_Pointer,std::allocator< itkSpatialObject2_Pointer > > &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetChildren(self, children)

    def AddChild(self, pointer):
        r"""
        AddChild(self, pointer)

        Parameters
        ----------
        pointer: itkSpatialObject2 *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_AddChild(self, pointer)

    def RemoveChild(self, pointer):
        r"""
        RemoveChild(self, pointer) -> bool

        Parameters
        ----------
        pointer: itkSpatialObject2 *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_RemoveChild(self, pointer)

    def RemoveAllChildren(self, *args):
        r"""
        RemoveAllChildren(self, depth=itk::SpatialObject::MaximumDepth)

        Parameters
        ----------
        depth: unsigned int

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_RemoveAllChildren(self, *args)

    def GetChildren(self, *args):
        r"""
        GetChildren(self, depth=0, name="") -> listitkSpatialObject2_Pointer

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetChildren(self, *args)

    def GetConstChildren(self, *args):
        r"""
        GetConstChildren(self, depth=0, name="") -> std::list< itkSpatialObject2_ConstPointer,std::allocator< itkSpatialObject2_ConstPointer > >

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetConstChildren(self, *args)

    def AddChildrenToList(self, *args):
        r"""
        AddChildrenToList(self, childrenList, depth=0, name="")

        Parameters
        ----------
        childrenList: std::list< itkSpatialObject2_Pointer,std::allocator< itkSpatialObject2_Pointer > > *
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_AddChildrenToList(self, *args)

    def AddChildrenToConstList(self, *args):
        r"""
        AddChildrenToConstList(self, childrenList, depth=0, name="")

        Parameters
        ----------
        childrenList: std::list< itkSpatialObject2_ConstPointer,std::allocator< itkSpatialObject2_ConstPointer > > *
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_AddChildrenToConstList(self, *args)

    def GetNumberOfChildren(self, *args):
        r"""
        GetNumberOfChildren(self, depth=0, name="") -> unsigned int

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetNumberOfChildren(self, *args)

    def GetObjectById(self, id):
        r"""
        GetObjectById(self, id) -> itkSpatialObject2

        Parameters
        ----------
        id: int

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetObjectById(self, id)

    def FixParentChildHierarchyUsingParentIds(self):
        r"""FixParentChildHierarchyUsingParentIds(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_FixParentChildHierarchyUsingParentIds(self)

    def CheckIdValidity(self):
        r"""CheckIdValidity(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_CheckIdValidity(self)

    def FixIdValidity(self):
        r"""FixIdValidity(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_FixIdValidity(self)

    def GetNextAvailableId(self):
        r"""GetNextAvailableId(self) -> int"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetNextAvailableId(self)

    def GetMyBoundingBoxInObjectSpace(self):
        r"""GetMyBoundingBoxInObjectSpace(self) -> itkBoundingBoxUL2DVCULPD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetMyBoundingBoxInObjectSpace(self)

    def GetMyBoundingBoxInWorldSpace(self):
        r"""GetMyBoundingBoxInWorldSpace(self) -> itkBoundingBoxUL2DVCULPD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetMyBoundingBoxInWorldSpace(self)

    def ComputeFamilyBoundingBox(self, *args):
        r"""
        ComputeFamilyBoundingBox(self, depth=0, name="") -> bool

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ComputeFamilyBoundingBox(self, *args)

    def GetFamilyBoundingBoxInObjectSpace(self):
        r"""GetFamilyBoundingBoxInObjectSpace(self) -> itkBoundingBoxUL2DVCULPD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetFamilyBoundingBoxInObjectSpace(self)

    def GetFamilyBoundingBoxInWorldSpace(self):
        r"""GetFamilyBoundingBoxInWorldSpace(self) -> itkBoundingBoxUL2DVCULPD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetFamilyBoundingBoxInWorldSpace(self)

    def SetLargestPossibleRegion(self, region):
        r"""
        SetLargestPossibleRegion(self, region)

        Parameters
        ----------
        region: itkImageRegion2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetLargestPossibleRegion(self, region)

    def GetLargestPossibleRegion(self):
        r"""GetLargestPossibleRegion(self) -> itkImageRegion2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetLargestPossibleRegion(self)

    def SetBufferedRegion(self, region):
        r"""
        SetBufferedRegion(self, region)

        Parameters
        ----------
        region: itkImageRegion2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetBufferedRegion(self, region)

    def GetBufferedRegion(self):
        r"""GetBufferedRegion(self) -> itkImageRegion2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetBufferedRegion(self)

    def SetRequestedRegion(self, *args):
        r"""
        SetRequestedRegion(self, region)

        Parameters
        ----------
        region: itkImageRegion2 const &

        SetRequestedRegion(self, data)

        Parameters
        ----------
        data: itkDataObject const *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_SetRequestedRegion(self, *args)

    def GetRequestedRegion(self):
        r"""GetRequestedRegion(self) -> itkImageRegion2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_GetRequestedRegion(self)

    def Evaluate(self, point):
        r"""
        Evaluate(self, point) -> bool

        Parameters
        ----------
        point: itkPointD2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_Evaluate(self, point)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkSpatialObject2

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

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

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_cast(obj)

    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__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkSpatialObject2 in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkSpatialObject2_swigregister(itkSpatialObject2)
class itkSpatialObject2_ConstPointer(object):
    r"""Proxy of C++ itkSpatialObject2_ConstPointer 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__(self) -> itkSpatialObject2_ConstPointer
        __init__(self, p) -> itkSpatialObject2_ConstPointer

        Parameters
        ----------
        p: itkSpatialObject2_ConstPointer const &

        __init__(self, p) -> itkSpatialObject2_ConstPointer

        Parameters
        ----------
        p: itkSpatialObject2 const *

        """
        _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_swiginit(self, _itkSpatialObjectBasePython.new_itkSpatialObject2_ConstPointer(*args))
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkSpatialObject2_ConstPointer

    def __deref__(self):
        r"""__deref__(self) -> itkSpatialObject2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer___deref__(self)

    def __ref__(self):
        r"""__ref__(self) -> itkSpatialObject2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer___ref__(self)

    def IsNotNull(self):
        r"""IsNotNull(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_IsNotNull(self)

    def IsNull(self):
        r"""IsNull(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_IsNull(self)

    def GetPointer(self):
        r"""GetPointer(self) -> itkSpatialObject2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetPointer(self)

    def get(self):
        r"""get(self) -> itkSpatialObject2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_get(self)

    def Print(self, os):
        r"""
        Print(self, os) -> itkSpatialObject2

        Parameters
        ----------
        os: std::basic_ostream< char,std::char_traits< char > > &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_Print(self, os)

    def Swap(self, other):
        r"""
        Swap(self, other)

        Parameters
        ----------
        other: itkSpatialObject2_ConstPointer &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_Swap(self, other)

    def GetMaximumDepth(self):
        r"""GetMaximumDepth(self) -> unsigned int"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetMaximumDepth(self)

    def GetObjectDimension(self):
        r"""GetObjectDimension(self) -> unsigned int"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetObjectDimension(self)

    def Clone(self):
        r"""Clone(self) -> itkSpatialObject2_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_Clone(self)

    def GetId(self):
        r"""GetId(self) -> int const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetId(self)

    def GetTypeName(self):
        r"""GetTypeName(self) -> std::string const"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetTypeName(self)

    def GetClassNameAndDimension(self):
        r"""GetClassNameAndDimension(self) -> std::string"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetClassNameAndDimension(self)

    def GetMyMTime(self):
        r"""GetMyMTime(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetMyMTime(self)

    def GetObjectToWorldTransformInverse(self):
        r"""GetObjectToWorldTransformInverse(self) -> itkAffineTransformD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetObjectToWorldTransformInverse(self)

    def GetObjectToParentTransformInverse(self):
        r"""GetObjectToParentTransformInverse(self) -> itkAffineTransformD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetObjectToParentTransformInverse(self)

    def IsInsideInObjectSpace(self, *args):
        r"""
        IsInsideInObjectSpace(self, point, depth, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        IsInsideInObjectSpace(self, point) -> bool

        Parameters
        ----------
        point: itkPointD2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_IsInsideInObjectSpace(self, *args)

    def ValueAtInObjectSpace(self, *args):
        r"""
        ValueAtInObjectSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_ValueAtInObjectSpace(self, *args)

    def IsEvaluableAtInObjectSpace(self, *args):
        r"""
        IsEvaluableAtInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_IsEvaluableAtInObjectSpace(self, *args)

    def IsInsideChildrenInObjectSpace(self, *args):
        r"""
        IsInsideChildrenInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_IsInsideChildrenInObjectSpace(self, *args)

    def ValueAtChildrenInObjectSpace(self, *args):
        r"""
        ValueAtChildrenInObjectSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_ValueAtChildrenInObjectSpace(self, *args)

    def IsEvaluableAtChildrenInObjectSpace(self, *args):
        r"""
        IsEvaluableAtChildrenInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_IsEvaluableAtChildrenInObjectSpace(self, *args)

    def GetDefaultInsideValue(self):
        r"""GetDefaultInsideValue(self) -> double"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetDefaultInsideValue(self)

    def GetDefaultOutsideValue(self):
        r"""GetDefaultOutsideValue(self) -> double"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetDefaultOutsideValue(self)

    def ValueAtInWorldSpace(self, *args):
        r"""
        ValueAtInWorldSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_ValueAtInWorldSpace(self, *args)

    def IsInsideInWorldSpace(self, *args):
        r"""
        IsInsideInWorldSpace(self, point, depth, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        IsInsideInWorldSpace(self, point) -> bool

        Parameters
        ----------
        point: itkPointD2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_IsInsideInWorldSpace(self, *args)

    def IsEvaluableAtInWorldSpace(self, *args):
        r"""
        IsEvaluableAtInWorldSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD2 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_IsEvaluableAtInWorldSpace(self, *args)

    def HasParent(self):
        r"""HasParent(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_HasParent(self)

    def GetParentId(self):
        r"""GetParentId(self) -> int const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetParentId(self)

    def GetChildren(self, *args):
        r"""
        GetChildren(self, depth=0, name="") -> listitkSpatialObject2_Pointer

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetChildren(self, *args)

    def GetConstChildren(self, *args):
        r"""
        GetConstChildren(self, depth=0, name="") -> std::list< itkSpatialObject2_ConstPointer,std::allocator< itkSpatialObject2_ConstPointer > >

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetConstChildren(self, *args)

    def AddChildrenToList(self, *args):
        r"""
        AddChildrenToList(self, childrenList, depth=0, name="")

        Parameters
        ----------
        childrenList: std::list< itkSpatialObject2_Pointer,std::allocator< itkSpatialObject2_Pointer > > *
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_AddChildrenToList(self, *args)

    def AddChildrenToConstList(self, *args):
        r"""
        AddChildrenToConstList(self, childrenList, depth=0, name="")

        Parameters
        ----------
        childrenList: std::list< itkSpatialObject2_ConstPointer,std::allocator< itkSpatialObject2_ConstPointer > > *
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_AddChildrenToConstList(self, *args)

    def GetNumberOfChildren(self, *args):
        r"""
        GetNumberOfChildren(self, depth=0, name="") -> unsigned int

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetNumberOfChildren(self, *args)

    def CheckIdValidity(self):
        r"""CheckIdValidity(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_CheckIdValidity(self)

    def GetNextAvailableId(self):
        r"""GetNextAvailableId(self) -> int"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetNextAvailableId(self)

    def GetMyBoundingBoxInObjectSpace(self):
        r"""GetMyBoundingBoxInObjectSpace(self) -> itkBoundingBoxUL2DVCULPD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetMyBoundingBoxInObjectSpace(self)

    def GetMyBoundingBoxInWorldSpace(self):
        r"""GetMyBoundingBoxInWorldSpace(self) -> itkBoundingBoxUL2DVCULPD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetMyBoundingBoxInWorldSpace(self)

    def ComputeFamilyBoundingBox(self, *args):
        r"""
        ComputeFamilyBoundingBox(self, depth=0, name="") -> bool

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_ComputeFamilyBoundingBox(self, *args)

    def GetFamilyBoundingBoxInObjectSpace(self):
        r"""GetFamilyBoundingBoxInObjectSpace(self) -> itkBoundingBoxUL2DVCULPD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetFamilyBoundingBoxInObjectSpace(self)

    def GetFamilyBoundingBoxInWorldSpace(self):
        r"""GetFamilyBoundingBoxInWorldSpace(self) -> itkBoundingBoxUL2DVCULPD2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetFamilyBoundingBoxInWorldSpace(self)

    def GetLargestPossibleRegion(self):
        r"""GetLargestPossibleRegion(self) -> itkImageRegion2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetLargestPossibleRegion(self)

    def GetBufferedRegion(self):
        r"""GetBufferedRegion(self) -> itkImageRegion2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetBufferedRegion(self)

    def GetRequestedRegion(self):
        r"""GetRequestedRegion(self) -> itkImageRegion2"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetRequestedRegion(self)

    def Evaluate(self, point):
        r"""
        Evaluate(self, point) -> bool

        Parameters
        ----------
        point: itkPointD2 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_Evaluate(self, point)

    def GetSource(self):
        r"""GetSource(self) -> itkProcessObject_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetSource(self)

    def GetSourceOutputName(self):
        r"""GetSourceOutputName(self) -> std::string const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetSourceOutputName(self)

    def GetSourceOutputIndex(self):
        r"""GetSourceOutputIndex(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetSourceOutputIndex(self)

    def UpdateSource(self):
        r"""UpdateSource(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_UpdateSource(self)

    def GetReleaseDataFlag(self):
        r"""GetReleaseDataFlag(self) -> bool const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetReleaseDataFlag(self)

    def ShouldIReleaseData(self):
        r"""ShouldIReleaseData(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_ShouldIReleaseData(self)

    def GetDataReleased(self):
        r"""GetDataReleased(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetDataReleased(self)

    def GetPipelineMTime(self):
        r"""GetPipelineMTime(self) -> unsigned long const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetPipelineMTime(self)

    def GetUpdateMTime(self):
        r"""GetUpdateMTime(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetUpdateMTime(self)

    def GetRealTimeStamp(self):
        r"""GetRealTimeStamp(self) -> itkRealTimeStamp"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetRealTimeStamp(self)

    def DebugOn(self):
        r"""DebugOn(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_DebugOn(self)

    def DebugOff(self):
        r"""DebugOff(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_DebugOff(self)

    def GetDebug(self):
        r"""GetDebug(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetDebug(self)

    def SetDebug(self, debugFlag):
        r"""
        SetDebug(self, debugFlag)

        Parameters
        ----------
        debugFlag: bool

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_SetDebug(self, debugFlag)

    def GetMTime(self):
        r"""GetMTime(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetMTime(self)

    def GetTimeStamp(self):
        r"""GetTimeStamp(self) -> itkTimeStamp"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetTimeStamp(self)

    def Modified(self):
        r"""Modified(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_Modified(self)

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

        Parameters
        ----------
        event: itkEventObject const &
        arg1: itkCommand *

        AddObserver(self, event, arg1) -> unsigned long

        Parameters
        ----------
        event: itkEventObject const &
        arg1: itkCommand *

        """

        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 _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_AddObserver(self, *args)


    def InvokeEvent(self, *args):
        r"""
        InvokeEvent(self, arg0)

        Parameters
        ----------
        arg0: itkEventObject const &

        InvokeEvent(self, arg0)

        Parameters
        ----------
        arg0: itkEventObject const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_InvokeEvent(self, *args)

    def HasObserver(self, event):
        r"""
        HasObserver(self, event) -> bool

        Parameters
        ----------
        event: itkEventObject const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_HasObserver(self, event)

    def GetMetaDataDictionary(self, *args):
        r"""
        GetMetaDataDictionary(self) -> itkMetaDataDictionary
        GetMetaDataDictionary(self) -> itkMetaDataDictionary
        """
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetMetaDataDictionary(self, *args)

    def GetObjectName(self):
        r"""GetObjectName(self) -> std::string const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetObjectName(self)

    def CreateAnother(self):
        r"""CreateAnother(self) -> itkLightObject_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_CreateAnother(self)

    def GetNameOfClass(self):
        r"""GetNameOfClass(self) -> char const *"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetNameOfClass(self)

    def GetReferenceCount(self):
        r"""GetReferenceCount(self) -> int"""
        return _itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_GetReferenceCount(self)

# Register itkSpatialObject2_ConstPointer in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkSpatialObject2_ConstPointer_swigregister(itkSpatialObject2_ConstPointer)

def itkSpatialObject3_New():
    return itkSpatialObject3.New()

class itkSpatialObject3(itk.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

    def GetMaximumDepth(self):
        r"""GetMaximumDepth(self) -> unsigned int"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetMaximumDepth(self)

    def GetObjectDimension(self):
        r"""GetObjectDimension(self) -> unsigned int"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetObjectDimension(self)

    @staticmethod
    def __New_orig__():
        r"""__New_orig__() -> itkSpatialObject3_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject3___New_orig__()

    def Clone(self):
        r"""Clone(self) -> itkSpatialObject3_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_Clone(self)

    def SetId(self, id):
        r"""
        SetId(self, id)

        Parameters
        ----------
        id: int

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetId(self, id)

    def GetId(self):
        r"""GetId(self) -> int const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetId(self)

    def SetTypeName(self, _arg):
        r"""
        SetTypeName(self, _arg)

        Parameters
        ----------
        _arg: std::string

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetTypeName(self, _arg)

    def GetTypeName(self):
        r"""GetTypeName(self) -> std::string const"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetTypeName(self)

    def GetClassNameAndDimension(self):
        r"""GetClassNameAndDimension(self) -> std::string"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetClassNameAndDimension(self)

    def Clear(self):
        r"""Clear(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_Clear(self)

    def SetProperty(self, property):
        r"""
        SetProperty(self, property)

        Parameters
        ----------
        property: itkSpatialObjectProperty const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetProperty(self, property)

    def GetProperty(self, *args):
        r"""
        GetProperty(self) -> itkSpatialObjectProperty
        GetProperty(self) -> itkSpatialObjectProperty
        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetProperty(self, *args)

    def GetMyMTime(self):
        r"""GetMyMTime(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetMyMTime(self)

    def SetObjectToWorldTransform(self, transform):
        r"""
        SetObjectToWorldTransform(self, transform)

        Parameters
        ----------
        transform: itkAffineTransformD3 const *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetObjectToWorldTransform(self, transform)

    def GetModifiableObjectToWorldTransform(self):
        r"""GetModifiableObjectToWorldTransform(self) -> itkAffineTransformD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetModifiableObjectToWorldTransform(self)

    def GetObjectToWorldTransform(self, *args):
        r"""
        GetObjectToWorldTransform(self) -> itkAffineTransformD3
        GetObjectToWorldTransform(self) -> itkAffineTransformD3
        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetObjectToWorldTransform(self, *args)

    def GetObjectToWorldTransformInverse(self):
        r"""GetObjectToWorldTransformInverse(self) -> itkAffineTransformD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetObjectToWorldTransformInverse(self)

    def SetObjectToParentTransform(self, transform):
        r"""
        SetObjectToParentTransform(self, transform)

        Parameters
        ----------
        transform: itkAffineTransformD3 const *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetObjectToParentTransform(self, transform)

    def GetModifiableObjectToParentTransform(self):
        r"""GetModifiableObjectToParentTransform(self) -> itkAffineTransformD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetModifiableObjectToParentTransform(self)

    def GetObjectToParentTransform(self, *args):
        r"""
        GetObjectToParentTransform(self) -> itkAffineTransformD3
        GetObjectToParentTransform(self) -> itkAffineTransformD3
        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetObjectToParentTransform(self, *args)

    def GetObjectToParentTransformInverse(self):
        r"""GetObjectToParentTransformInverse(self) -> itkAffineTransformD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetObjectToParentTransformInverse(self)

    def ComputeObjectToParentTransform(self):
        r"""ComputeObjectToParentTransform(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ComputeObjectToParentTransform(self)

    def IsInsideInObjectSpace(self, *args):
        r"""
        IsInsideInObjectSpace(self, point, depth, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        IsInsideInObjectSpace(self, point) -> bool

        Parameters
        ----------
        point: itkPointD3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_IsInsideInObjectSpace(self, *args)

    def ValueAtInObjectSpace(self, *args):
        r"""
        ValueAtInObjectSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ValueAtInObjectSpace(self, *args)

    def IsEvaluableAtInObjectSpace(self, *args):
        r"""
        IsEvaluableAtInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_IsEvaluableAtInObjectSpace(self, *args)

    def IsInsideChildrenInObjectSpace(self, *args):
        r"""
        IsInsideChildrenInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_IsInsideChildrenInObjectSpace(self, *args)

    def ValueAtChildrenInObjectSpace(self, *args):
        r"""
        ValueAtChildrenInObjectSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ValueAtChildrenInObjectSpace(self, *args)

    def IsEvaluableAtChildrenInObjectSpace(self, *args):
        r"""
        IsEvaluableAtChildrenInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_IsEvaluableAtChildrenInObjectSpace(self, *args)

    def SetDefaultInsideValue(self, _arg):
        r"""
        SetDefaultInsideValue(self, _arg)

        Parameters
        ----------
        _arg: double

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetDefaultInsideValue(self, _arg)

    def GetDefaultInsideValue(self):
        r"""GetDefaultInsideValue(self) -> double"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetDefaultInsideValue(self)

    def SetDefaultOutsideValue(self, _arg):
        r"""
        SetDefaultOutsideValue(self, _arg)

        Parameters
        ----------
        _arg: double

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetDefaultOutsideValue(self, _arg)

    def GetDefaultOutsideValue(self):
        r"""GetDefaultOutsideValue(self) -> double"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetDefaultOutsideValue(self)

    def ValueAtInWorldSpace(self, *args):
        r"""
        ValueAtInWorldSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ValueAtInWorldSpace(self, *args)

    def IsInsideInWorldSpace(self, *args):
        r"""
        IsInsideInWorldSpace(self, point, depth, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        IsInsideInWorldSpace(self, point) -> bool

        Parameters
        ----------
        point: itkPointD3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_IsInsideInWorldSpace(self, *args)

    def IsEvaluableAtInWorldSpace(self, *args):
        r"""
        IsEvaluableAtInWorldSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_IsEvaluableAtInWorldSpace(self, *args)

    def DerivativeAtInObjectSpace(self, *args):
        r"""
        DerivativeAtInObjectSpace(self, point, order, value, depth=0, name="", offset=MakeFilled< DerivativeOffsetType >(1))

        Parameters
        ----------
        point: itkPointD3 const &
        order: unsigned short
        value: itkCovariantVectorD3 &
        depth: unsigned int
        name: std::string const &
        offset: itkVectorD3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_DerivativeAtInObjectSpace(self, *args)

    def DerivativeAtInWorldSpace(self, *args):
        r"""
        DerivativeAtInWorldSpace(self, point, order, value, depth=0, name="", offset=MakeFilled< DerivativeOffsetType >(1))

        Parameters
        ----------
        point: itkPointD3 const &
        order: unsigned short
        value: itkCovariantVectorD3 &
        depth: unsigned int
        name: std::string const &
        offset: itkVectorD3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_DerivativeAtInWorldSpace(self, *args)

    def SetParent(self, parent):
        r"""
        SetParent(self, parent)

        Parameters
        ----------
        parent: itkSpatialObject3 *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetParent(self, parent)

    def HasParent(self):
        r"""HasParent(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_HasParent(self)

    def GetParent(self, *args):
        r"""
        GetParent(self) -> itkSpatialObject3
        GetParent(self) -> itkSpatialObject3
        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetParent(self, *args)

    def SetParentId(self, _arg):
        r"""
        SetParentId(self, _arg)

        Parameters
        ----------
        _arg: int

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetParentId(self, _arg)

    def GetParentId(self):
        r"""GetParentId(self) -> int const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetParentId(self)

    def SetChildren(self, children):
        r"""
        SetChildren(self, children)

        Parameters
        ----------
        children: std::list< itkSpatialObject3_Pointer,std::allocator< itkSpatialObject3_Pointer > > &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetChildren(self, children)

    def AddChild(self, pointer):
        r"""
        AddChild(self, pointer)

        Parameters
        ----------
        pointer: itkSpatialObject3 *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_AddChild(self, pointer)

    def RemoveChild(self, pointer):
        r"""
        RemoveChild(self, pointer) -> bool

        Parameters
        ----------
        pointer: itkSpatialObject3 *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_RemoveChild(self, pointer)

    def RemoveAllChildren(self, *args):
        r"""
        RemoveAllChildren(self, depth=itk::SpatialObject::MaximumDepth)

        Parameters
        ----------
        depth: unsigned int

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_RemoveAllChildren(self, *args)

    def GetChildren(self, *args):
        r"""
        GetChildren(self, depth=0, name="") -> listitkSpatialObject3_Pointer

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetChildren(self, *args)

    def GetConstChildren(self, *args):
        r"""
        GetConstChildren(self, depth=0, name="") -> std::list< itkSpatialObject3_ConstPointer,std::allocator< itkSpatialObject3_ConstPointer > >

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetConstChildren(self, *args)

    def AddChildrenToList(self, *args):
        r"""
        AddChildrenToList(self, childrenList, depth=0, name="")

        Parameters
        ----------
        childrenList: std::list< itkSpatialObject3_Pointer,std::allocator< itkSpatialObject3_Pointer > > *
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_AddChildrenToList(self, *args)

    def AddChildrenToConstList(self, *args):
        r"""
        AddChildrenToConstList(self, childrenList, depth=0, name="")

        Parameters
        ----------
        childrenList: std::list< itkSpatialObject3_ConstPointer,std::allocator< itkSpatialObject3_ConstPointer > > *
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_AddChildrenToConstList(self, *args)

    def GetNumberOfChildren(self, *args):
        r"""
        GetNumberOfChildren(self, depth=0, name="") -> unsigned int

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetNumberOfChildren(self, *args)

    def GetObjectById(self, id):
        r"""
        GetObjectById(self, id) -> itkSpatialObject3

        Parameters
        ----------
        id: int

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetObjectById(self, id)

    def FixParentChildHierarchyUsingParentIds(self):
        r"""FixParentChildHierarchyUsingParentIds(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_FixParentChildHierarchyUsingParentIds(self)

    def CheckIdValidity(self):
        r"""CheckIdValidity(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_CheckIdValidity(self)

    def FixIdValidity(self):
        r"""FixIdValidity(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_FixIdValidity(self)

    def GetNextAvailableId(self):
        r"""GetNextAvailableId(self) -> int"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetNextAvailableId(self)

    def GetMyBoundingBoxInObjectSpace(self):
        r"""GetMyBoundingBoxInObjectSpace(self) -> itkBoundingBoxUL3DVCULPD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetMyBoundingBoxInObjectSpace(self)

    def GetMyBoundingBoxInWorldSpace(self):
        r"""GetMyBoundingBoxInWorldSpace(self) -> itkBoundingBoxUL3DVCULPD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetMyBoundingBoxInWorldSpace(self)

    def ComputeFamilyBoundingBox(self, *args):
        r"""
        ComputeFamilyBoundingBox(self, depth=0, name="") -> bool

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ComputeFamilyBoundingBox(self, *args)

    def GetFamilyBoundingBoxInObjectSpace(self):
        r"""GetFamilyBoundingBoxInObjectSpace(self) -> itkBoundingBoxUL3DVCULPD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetFamilyBoundingBoxInObjectSpace(self)

    def GetFamilyBoundingBoxInWorldSpace(self):
        r"""GetFamilyBoundingBoxInWorldSpace(self) -> itkBoundingBoxUL3DVCULPD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetFamilyBoundingBoxInWorldSpace(self)

    def SetLargestPossibleRegion(self, region):
        r"""
        SetLargestPossibleRegion(self, region)

        Parameters
        ----------
        region: itkImageRegion3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetLargestPossibleRegion(self, region)

    def GetLargestPossibleRegion(self):
        r"""GetLargestPossibleRegion(self) -> itkImageRegion3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetLargestPossibleRegion(self)

    def SetBufferedRegion(self, region):
        r"""
        SetBufferedRegion(self, region)

        Parameters
        ----------
        region: itkImageRegion3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetBufferedRegion(self, region)

    def GetBufferedRegion(self):
        r"""GetBufferedRegion(self) -> itkImageRegion3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetBufferedRegion(self)

    def SetRequestedRegion(self, *args):
        r"""
        SetRequestedRegion(self, region)

        Parameters
        ----------
        region: itkImageRegion3 const &

        SetRequestedRegion(self, data)

        Parameters
        ----------
        data: itkDataObject const *

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_SetRequestedRegion(self, *args)

    def GetRequestedRegion(self):
        r"""GetRequestedRegion(self) -> itkImageRegion3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_GetRequestedRegion(self)

    def Evaluate(self, point):
        r"""
        Evaluate(self, point) -> bool

        Parameters
        ----------
        point: itkPointD3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_Evaluate(self, point)
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkSpatialObject3

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

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

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_cast(obj)

    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__()
        from itk.support import template_class
        template_class.New(obj, *args, **kargs)
        return obj
    New = staticmethod(New)


# Register itkSpatialObject3 in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkSpatialObject3_swigregister(itkSpatialObject3)
class itkSpatialObject3_ConstPointer(object):
    r"""Proxy of C++ itkSpatialObject3_ConstPointer 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__(self) -> itkSpatialObject3_ConstPointer
        __init__(self, p) -> itkSpatialObject3_ConstPointer

        Parameters
        ----------
        p: itkSpatialObject3_ConstPointer const &

        __init__(self, p) -> itkSpatialObject3_ConstPointer

        Parameters
        ----------
        p: itkSpatialObject3 const *

        """
        _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_swiginit(self, _itkSpatialObjectBasePython.new_itkSpatialObject3_ConstPointer(*args))
    __swig_destroy__ = _itkSpatialObjectBasePython.delete_itkSpatialObject3_ConstPointer

    def __deref__(self):
        r"""__deref__(self) -> itkSpatialObject3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer___deref__(self)

    def __ref__(self):
        r"""__ref__(self) -> itkSpatialObject3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer___ref__(self)

    def IsNotNull(self):
        r"""IsNotNull(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_IsNotNull(self)

    def IsNull(self):
        r"""IsNull(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_IsNull(self)

    def GetPointer(self):
        r"""GetPointer(self) -> itkSpatialObject3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetPointer(self)

    def get(self):
        r"""get(self) -> itkSpatialObject3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_get(self)

    def Print(self, os):
        r"""
        Print(self, os) -> itkSpatialObject3

        Parameters
        ----------
        os: std::basic_ostream< char,std::char_traits< char > > &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_Print(self, os)

    def Swap(self, other):
        r"""
        Swap(self, other)

        Parameters
        ----------
        other: itkSpatialObject3_ConstPointer &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_Swap(self, other)

    def GetMaximumDepth(self):
        r"""GetMaximumDepth(self) -> unsigned int"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetMaximumDepth(self)

    def GetObjectDimension(self):
        r"""GetObjectDimension(self) -> unsigned int"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetObjectDimension(self)

    def Clone(self):
        r"""Clone(self) -> itkSpatialObject3_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_Clone(self)

    def GetId(self):
        r"""GetId(self) -> int const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetId(self)

    def GetTypeName(self):
        r"""GetTypeName(self) -> std::string const"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetTypeName(self)

    def GetClassNameAndDimension(self):
        r"""GetClassNameAndDimension(self) -> std::string"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetClassNameAndDimension(self)

    def GetMyMTime(self):
        r"""GetMyMTime(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetMyMTime(self)

    def GetObjectToWorldTransformInverse(self):
        r"""GetObjectToWorldTransformInverse(self) -> itkAffineTransformD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetObjectToWorldTransformInverse(self)

    def GetObjectToParentTransformInverse(self):
        r"""GetObjectToParentTransformInverse(self) -> itkAffineTransformD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetObjectToParentTransformInverse(self)

    def IsInsideInObjectSpace(self, *args):
        r"""
        IsInsideInObjectSpace(self, point, depth, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        IsInsideInObjectSpace(self, point) -> bool

        Parameters
        ----------
        point: itkPointD3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_IsInsideInObjectSpace(self, *args)

    def ValueAtInObjectSpace(self, *args):
        r"""
        ValueAtInObjectSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_ValueAtInObjectSpace(self, *args)

    def IsEvaluableAtInObjectSpace(self, *args):
        r"""
        IsEvaluableAtInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_IsEvaluableAtInObjectSpace(self, *args)

    def IsInsideChildrenInObjectSpace(self, *args):
        r"""
        IsInsideChildrenInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_IsInsideChildrenInObjectSpace(self, *args)

    def ValueAtChildrenInObjectSpace(self, *args):
        r"""
        ValueAtChildrenInObjectSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_ValueAtChildrenInObjectSpace(self, *args)

    def IsEvaluableAtChildrenInObjectSpace(self, *args):
        r"""
        IsEvaluableAtChildrenInObjectSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_IsEvaluableAtChildrenInObjectSpace(self, *args)

    def GetDefaultInsideValue(self):
        r"""GetDefaultInsideValue(self) -> double"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetDefaultInsideValue(self)

    def GetDefaultOutsideValue(self):
        r"""GetDefaultOutsideValue(self) -> double"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetDefaultOutsideValue(self)

    def ValueAtInWorldSpace(self, *args):
        r"""
        ValueAtInWorldSpace(self, point, value, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        value: double &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_ValueAtInWorldSpace(self, *args)

    def IsInsideInWorldSpace(self, *args):
        r"""
        IsInsideInWorldSpace(self, point, depth, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        IsInsideInWorldSpace(self, point) -> bool

        Parameters
        ----------
        point: itkPointD3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_IsInsideInWorldSpace(self, *args)

    def IsEvaluableAtInWorldSpace(self, *args):
        r"""
        IsEvaluableAtInWorldSpace(self, point, depth=0, name="") -> bool

        Parameters
        ----------
        point: itkPointD3 const &
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_IsEvaluableAtInWorldSpace(self, *args)

    def HasParent(self):
        r"""HasParent(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_HasParent(self)

    def GetParentId(self):
        r"""GetParentId(self) -> int const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetParentId(self)

    def GetChildren(self, *args):
        r"""
        GetChildren(self, depth=0, name="") -> listitkSpatialObject3_Pointer

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetChildren(self, *args)

    def GetConstChildren(self, *args):
        r"""
        GetConstChildren(self, depth=0, name="") -> std::list< itkSpatialObject3_ConstPointer,std::allocator< itkSpatialObject3_ConstPointer > >

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetConstChildren(self, *args)

    def AddChildrenToList(self, *args):
        r"""
        AddChildrenToList(self, childrenList, depth=0, name="")

        Parameters
        ----------
        childrenList: std::list< itkSpatialObject3_Pointer,std::allocator< itkSpatialObject3_Pointer > > *
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_AddChildrenToList(self, *args)

    def AddChildrenToConstList(self, *args):
        r"""
        AddChildrenToConstList(self, childrenList, depth=0, name="")

        Parameters
        ----------
        childrenList: std::list< itkSpatialObject3_ConstPointer,std::allocator< itkSpatialObject3_ConstPointer > > *
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_AddChildrenToConstList(self, *args)

    def GetNumberOfChildren(self, *args):
        r"""
        GetNumberOfChildren(self, depth=0, name="") -> unsigned int

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetNumberOfChildren(self, *args)

    def CheckIdValidity(self):
        r"""CheckIdValidity(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_CheckIdValidity(self)

    def GetNextAvailableId(self):
        r"""GetNextAvailableId(self) -> int"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetNextAvailableId(self)

    def GetMyBoundingBoxInObjectSpace(self):
        r"""GetMyBoundingBoxInObjectSpace(self) -> itkBoundingBoxUL3DVCULPD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetMyBoundingBoxInObjectSpace(self)

    def GetMyBoundingBoxInWorldSpace(self):
        r"""GetMyBoundingBoxInWorldSpace(self) -> itkBoundingBoxUL3DVCULPD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetMyBoundingBoxInWorldSpace(self)

    def ComputeFamilyBoundingBox(self, *args):
        r"""
        ComputeFamilyBoundingBox(self, depth=0, name="") -> bool

        Parameters
        ----------
        depth: unsigned int
        name: std::string const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_ComputeFamilyBoundingBox(self, *args)

    def GetFamilyBoundingBoxInObjectSpace(self):
        r"""GetFamilyBoundingBoxInObjectSpace(self) -> itkBoundingBoxUL3DVCULPD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetFamilyBoundingBoxInObjectSpace(self)

    def GetFamilyBoundingBoxInWorldSpace(self):
        r"""GetFamilyBoundingBoxInWorldSpace(self) -> itkBoundingBoxUL3DVCULPD3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetFamilyBoundingBoxInWorldSpace(self)

    def GetLargestPossibleRegion(self):
        r"""GetLargestPossibleRegion(self) -> itkImageRegion3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetLargestPossibleRegion(self)

    def GetBufferedRegion(self):
        r"""GetBufferedRegion(self) -> itkImageRegion3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetBufferedRegion(self)

    def GetRequestedRegion(self):
        r"""GetRequestedRegion(self) -> itkImageRegion3"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetRequestedRegion(self)

    def Evaluate(self, point):
        r"""
        Evaluate(self, point) -> bool

        Parameters
        ----------
        point: itkPointD3 const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_Evaluate(self, point)

    def GetSource(self):
        r"""GetSource(self) -> itkProcessObject_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetSource(self)

    def GetSourceOutputName(self):
        r"""GetSourceOutputName(self) -> std::string const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetSourceOutputName(self)

    def GetSourceOutputIndex(self):
        r"""GetSourceOutputIndex(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetSourceOutputIndex(self)

    def UpdateSource(self):
        r"""UpdateSource(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_UpdateSource(self)

    def GetReleaseDataFlag(self):
        r"""GetReleaseDataFlag(self) -> bool const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetReleaseDataFlag(self)

    def ShouldIReleaseData(self):
        r"""ShouldIReleaseData(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_ShouldIReleaseData(self)

    def GetDataReleased(self):
        r"""GetDataReleased(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetDataReleased(self)

    def GetPipelineMTime(self):
        r"""GetPipelineMTime(self) -> unsigned long const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetPipelineMTime(self)

    def GetUpdateMTime(self):
        r"""GetUpdateMTime(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetUpdateMTime(self)

    def GetRealTimeStamp(self):
        r"""GetRealTimeStamp(self) -> itkRealTimeStamp"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetRealTimeStamp(self)

    def DebugOn(self):
        r"""DebugOn(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_DebugOn(self)

    def DebugOff(self):
        r"""DebugOff(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_DebugOff(self)

    def GetDebug(self):
        r"""GetDebug(self) -> bool"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetDebug(self)

    def SetDebug(self, debugFlag):
        r"""
        SetDebug(self, debugFlag)

        Parameters
        ----------
        debugFlag: bool

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_SetDebug(self, debugFlag)

    def GetMTime(self):
        r"""GetMTime(self) -> unsigned long"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetMTime(self)

    def GetTimeStamp(self):
        r"""GetTimeStamp(self) -> itkTimeStamp"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetTimeStamp(self)

    def Modified(self):
        r"""Modified(self)"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_Modified(self)

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

        Parameters
        ----------
        event: itkEventObject const &
        arg1: itkCommand *

        AddObserver(self, event, arg1) -> unsigned long

        Parameters
        ----------
        event: itkEventObject const &
        arg1: itkCommand *

        """

        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 _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_AddObserver(self, *args)


    def InvokeEvent(self, *args):
        r"""
        InvokeEvent(self, arg0)

        Parameters
        ----------
        arg0: itkEventObject const &

        InvokeEvent(self, arg0)

        Parameters
        ----------
        arg0: itkEventObject const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_InvokeEvent(self, *args)

    def HasObserver(self, event):
        r"""
        HasObserver(self, event) -> bool

        Parameters
        ----------
        event: itkEventObject const &

        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_HasObserver(self, event)

    def GetMetaDataDictionary(self, *args):
        r"""
        GetMetaDataDictionary(self) -> itkMetaDataDictionary
        GetMetaDataDictionary(self) -> itkMetaDataDictionary
        """
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetMetaDataDictionary(self, *args)

    def GetObjectName(self):
        r"""GetObjectName(self) -> std::string const &"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetObjectName(self)

    def CreateAnother(self):
        r"""CreateAnother(self) -> itkLightObject_Pointer"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_CreateAnother(self)

    def GetNameOfClass(self):
        r"""GetNameOfClass(self) -> char const *"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetNameOfClass(self)

    def GetReferenceCount(self):
        r"""GetReferenceCount(self) -> int"""
        return _itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_GetReferenceCount(self)

# Register itkSpatialObject3_ConstPointer in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkSpatialObject3_ConstPointer_swigregister(itkSpatialObject3_ConstPointer)
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__(self) -> itkMetaEvent
        __init__(self, arg0) -> itkMetaEvent

        Parameters
        ----------
        arg0: itkMetaEvent const &

        """
        _itkSpatialObjectBasePython.itkMetaEvent_swiginit(self, _itkSpatialObjectBasePython.new_itkMetaEvent(*args))

# Register itkMetaEvent in _itkSpatialObjectBasePython:
_itkSpatialObjectBasePython.itkMetaEvent_swigregister(itkMetaEvent)

