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

from sys import version_info as _swig_python_version_info
if _swig_python_version_info < (2, 7, 0):
    raise RuntimeError("Python 2.7 or later required")

# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _pycautodoc
else:
    import _pycautodoc

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 == "thisown":
            self.this.own(value)
        elif name == "this":
            set(self, name, 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__)


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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _pycautodoc.delete_SwigPyIterator

    def value(self):
        return _pycautodoc.SwigPyIterator_value(self)

    def incr(self, n=1):
        return _pycautodoc.SwigPyIterator_incr(self, n)

    def decr(self, n=1):
        return _pycautodoc.SwigPyIterator_decr(self, n)

    def distance(self, x):
        return _pycautodoc.SwigPyIterator_distance(self, x)

    def equal(self, x):
        return _pycautodoc.SwigPyIterator_equal(self, x)

    def copy(self):
        return _pycautodoc.SwigPyIterator_copy(self)

    def next(self):
        return _pycautodoc.SwigPyIterator_next(self)

    def __next__(self):
        return _pycautodoc.SwigPyIterator___next__(self)

    def previous(self):
        return _pycautodoc.SwigPyIterator_previous(self)

    def advance(self, n):
        return _pycautodoc.SwigPyIterator_advance(self, n)

    def __eq__(self, x):
        return _pycautodoc.SwigPyIterator___eq__(self, x)

    def __ne__(self, x):
        return _pycautodoc.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n):
        return _pycautodoc.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n):
        return _pycautodoc.SwigPyIterator___isub__(self, n)

    def __add__(self, n):
        return _pycautodoc.SwigPyIterator___add__(self, n)

    def __sub__(self, *args):
        return _pycautodoc.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _pycautodoc:
_pycautodoc.SwigPyIterator_swigregister(SwigPyIterator)

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

    def iterator(self):
        return _pycautodoc.AutoDocFunctionVector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        return _pycautodoc.AutoDocFunctionVector___nonzero__(self)

    def __bool__(self):
        return _pycautodoc.AutoDocFunctionVector___bool__(self)

    def __len__(self):
        return _pycautodoc.AutoDocFunctionVector___len__(self)

    def __getslice__(self, i, j):
        return _pycautodoc.AutoDocFunctionVector___getslice__(self, i, j)

    def __setslice__(self, *args):
        return _pycautodoc.AutoDocFunctionVector___setslice__(self, *args)

    def __delslice__(self, i, j):
        return _pycautodoc.AutoDocFunctionVector___delslice__(self, i, j)

    def __delitem__(self, *args):
        return _pycautodoc.AutoDocFunctionVector___delitem__(self, *args)

    def __getitem__(self, *args):
        return _pycautodoc.AutoDocFunctionVector___getitem__(self, *args)

    def __setitem__(self, *args):
        return _pycautodoc.AutoDocFunctionVector___setitem__(self, *args)

    def pop(self):
        return _pycautodoc.AutoDocFunctionVector_pop(self)

    def append(self, x):
        return _pycautodoc.AutoDocFunctionVector_append(self, x)

    def empty(self):
        return _pycautodoc.AutoDocFunctionVector_empty(self)

    def size(self):
        return _pycautodoc.AutoDocFunctionVector_size(self)

    def swap(self, v):
        return _pycautodoc.AutoDocFunctionVector_swap(self, v)

    def begin(self):
        return _pycautodoc.AutoDocFunctionVector_begin(self)

    def end(self):
        return _pycautodoc.AutoDocFunctionVector_end(self)

    def rbegin(self):
        return _pycautodoc.AutoDocFunctionVector_rbegin(self)

    def rend(self):
        return _pycautodoc.AutoDocFunctionVector_rend(self)

    def clear(self):
        return _pycautodoc.AutoDocFunctionVector_clear(self)

    def get_allocator(self):
        return _pycautodoc.AutoDocFunctionVector_get_allocator(self)

    def pop_back(self):
        return _pycautodoc.AutoDocFunctionVector_pop_back(self)

    def erase(self, *args):
        return _pycautodoc.AutoDocFunctionVector_erase(self, *args)

    def __init__(self, *args):
        _pycautodoc.AutoDocFunctionVector_swiginit(self, _pycautodoc.new_AutoDocFunctionVector(*args))

    def push_back(self, x):
        return _pycautodoc.AutoDocFunctionVector_push_back(self, x)

    def front(self):
        return _pycautodoc.AutoDocFunctionVector_front(self)

    def back(self):
        return _pycautodoc.AutoDocFunctionVector_back(self)

    def assign(self, n, x):
        return _pycautodoc.AutoDocFunctionVector_assign(self, n, x)

    def resize(self, *args):
        return _pycautodoc.AutoDocFunctionVector_resize(self, *args)

    def insert(self, *args):
        return _pycautodoc.AutoDocFunctionVector_insert(self, *args)

    def reserve(self, n):
        return _pycautodoc.AutoDocFunctionVector_reserve(self, n)

    def capacity(self):
        return _pycautodoc.AutoDocFunctionVector_capacity(self)
    __swig_destroy__ = _pycautodoc.delete_AutoDocFunctionVector

# Register AutoDocFunctionVector in _pycautodoc:
_pycautodoc.AutoDocFunctionVector_swigregister(AutoDocFunctionVector)

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

    def iterator(self):
        return _pycautodoc.AutoDocParameterVector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        return _pycautodoc.AutoDocParameterVector___nonzero__(self)

    def __bool__(self):
        return _pycautodoc.AutoDocParameterVector___bool__(self)

    def __len__(self):
        return _pycautodoc.AutoDocParameterVector___len__(self)

    def __getslice__(self, i, j):
        return _pycautodoc.AutoDocParameterVector___getslice__(self, i, j)

    def __setslice__(self, *args):
        return _pycautodoc.AutoDocParameterVector___setslice__(self, *args)

    def __delslice__(self, i, j):
        return _pycautodoc.AutoDocParameterVector___delslice__(self, i, j)

    def __delitem__(self, *args):
        return _pycautodoc.AutoDocParameterVector___delitem__(self, *args)

    def __getitem__(self, *args):
        return _pycautodoc.AutoDocParameterVector___getitem__(self, *args)

    def __setitem__(self, *args):
        return _pycautodoc.AutoDocParameterVector___setitem__(self, *args)

    def pop(self):
        return _pycautodoc.AutoDocParameterVector_pop(self)

    def append(self, x):
        return _pycautodoc.AutoDocParameterVector_append(self, x)

    def empty(self):
        return _pycautodoc.AutoDocParameterVector_empty(self)

    def size(self):
        return _pycautodoc.AutoDocParameterVector_size(self)

    def swap(self, v):
        return _pycautodoc.AutoDocParameterVector_swap(self, v)

    def begin(self):
        return _pycautodoc.AutoDocParameterVector_begin(self)

    def end(self):
        return _pycautodoc.AutoDocParameterVector_end(self)

    def rbegin(self):
        return _pycautodoc.AutoDocParameterVector_rbegin(self)

    def rend(self):
        return _pycautodoc.AutoDocParameterVector_rend(self)

    def clear(self):
        return _pycautodoc.AutoDocParameterVector_clear(self)

    def get_allocator(self):
        return _pycautodoc.AutoDocParameterVector_get_allocator(self)

    def pop_back(self):
        return _pycautodoc.AutoDocParameterVector_pop_back(self)

    def erase(self, *args):
        return _pycautodoc.AutoDocParameterVector_erase(self, *args)

    def __init__(self, *args):
        _pycautodoc.AutoDocParameterVector_swiginit(self, _pycautodoc.new_AutoDocParameterVector(*args))

    def push_back(self, x):
        return _pycautodoc.AutoDocParameterVector_push_back(self, x)

    def front(self):
        return _pycautodoc.AutoDocParameterVector_front(self)

    def back(self):
        return _pycautodoc.AutoDocParameterVector_back(self)

    def assign(self, n, x):
        return _pycautodoc.AutoDocParameterVector_assign(self, n, x)

    def resize(self, *args):
        return _pycautodoc.AutoDocParameterVector_resize(self, *args)

    def insert(self, *args):
        return _pycautodoc.AutoDocParameterVector_insert(self, *args)

    def reserve(self, n):
        return _pycautodoc.AutoDocParameterVector_reserve(self, n)

    def capacity(self):
        return _pycautodoc.AutoDocParameterVector_capacity(self)
    __swig_destroy__ = _pycautodoc.delete_AutoDocParameterVector

# Register AutoDocParameterVector in _pycautodoc:
_pycautodoc.AutoDocParameterVector_swigregister(AutoDocParameterVector)

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

    def iterator(self):
        return _pycautodoc.AutoDocClassVector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        return _pycautodoc.AutoDocClassVector___nonzero__(self)

    def __bool__(self):
        return _pycautodoc.AutoDocClassVector___bool__(self)

    def __len__(self):
        return _pycautodoc.AutoDocClassVector___len__(self)

    def __getslice__(self, i, j):
        return _pycautodoc.AutoDocClassVector___getslice__(self, i, j)

    def __setslice__(self, *args):
        return _pycautodoc.AutoDocClassVector___setslice__(self, *args)

    def __delslice__(self, i, j):
        return _pycautodoc.AutoDocClassVector___delslice__(self, i, j)

    def __delitem__(self, *args):
        return _pycautodoc.AutoDocClassVector___delitem__(self, *args)

    def __getitem__(self, *args):
        return _pycautodoc.AutoDocClassVector___getitem__(self, *args)

    def __setitem__(self, *args):
        return _pycautodoc.AutoDocClassVector___setitem__(self, *args)

    def pop(self):
        return _pycautodoc.AutoDocClassVector_pop(self)

    def append(self, x):
        return _pycautodoc.AutoDocClassVector_append(self, x)

    def empty(self):
        return _pycautodoc.AutoDocClassVector_empty(self)

    def size(self):
        return _pycautodoc.AutoDocClassVector_size(self)

    def swap(self, v):
        return _pycautodoc.AutoDocClassVector_swap(self, v)

    def begin(self):
        return _pycautodoc.AutoDocClassVector_begin(self)

    def end(self):
        return _pycautodoc.AutoDocClassVector_end(self)

    def rbegin(self):
        return _pycautodoc.AutoDocClassVector_rbegin(self)

    def rend(self):
        return _pycautodoc.AutoDocClassVector_rend(self)

    def clear(self):
        return _pycautodoc.AutoDocClassVector_clear(self)

    def get_allocator(self):
        return _pycautodoc.AutoDocClassVector_get_allocator(self)

    def pop_back(self):
        return _pycautodoc.AutoDocClassVector_pop_back(self)

    def erase(self, *args):
        return _pycautodoc.AutoDocClassVector_erase(self, *args)

    def __init__(self, *args):
        _pycautodoc.AutoDocClassVector_swiginit(self, _pycautodoc.new_AutoDocClassVector(*args))

    def push_back(self, x):
        return _pycautodoc.AutoDocClassVector_push_back(self, x)

    def front(self):
        return _pycautodoc.AutoDocClassVector_front(self)

    def back(self):
        return _pycautodoc.AutoDocClassVector_back(self)

    def assign(self, n, x):
        return _pycautodoc.AutoDocClassVector_assign(self, n, x)

    def resize(self, *args):
        return _pycautodoc.AutoDocClassVector_resize(self, *args)

    def insert(self, *args):
        return _pycautodoc.AutoDocClassVector_insert(self, *args)

    def reserve(self, n):
        return _pycautodoc.AutoDocClassVector_reserve(self, n)

    def capacity(self):
        return _pycautodoc.AutoDocClassVector_capacity(self)
    __swig_destroy__ = _pycautodoc.delete_AutoDocClassVector

# Register AutoDocClassVector in _pycautodoc:
_pycautodoc.AutoDocClassVector_swigregister(AutoDocClassVector)

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

    def iterator(self):
        return _pycautodoc.AutoDocExampleVector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        return _pycautodoc.AutoDocExampleVector___nonzero__(self)

    def __bool__(self):
        return _pycautodoc.AutoDocExampleVector___bool__(self)

    def __len__(self):
        return _pycautodoc.AutoDocExampleVector___len__(self)

    def __getslice__(self, i, j):
        return _pycautodoc.AutoDocExampleVector___getslice__(self, i, j)

    def __setslice__(self, *args):
        return _pycautodoc.AutoDocExampleVector___setslice__(self, *args)

    def __delslice__(self, i, j):
        return _pycautodoc.AutoDocExampleVector___delslice__(self, i, j)

    def __delitem__(self, *args):
        return _pycautodoc.AutoDocExampleVector___delitem__(self, *args)

    def __getitem__(self, *args):
        return _pycautodoc.AutoDocExampleVector___getitem__(self, *args)

    def __setitem__(self, *args):
        return _pycautodoc.AutoDocExampleVector___setitem__(self, *args)

    def pop(self):
        return _pycautodoc.AutoDocExampleVector_pop(self)

    def append(self, x):
        return _pycautodoc.AutoDocExampleVector_append(self, x)

    def empty(self):
        return _pycautodoc.AutoDocExampleVector_empty(self)

    def size(self):
        return _pycautodoc.AutoDocExampleVector_size(self)

    def swap(self, v):
        return _pycautodoc.AutoDocExampleVector_swap(self, v)

    def begin(self):
        return _pycautodoc.AutoDocExampleVector_begin(self)

    def end(self):
        return _pycautodoc.AutoDocExampleVector_end(self)

    def rbegin(self):
        return _pycautodoc.AutoDocExampleVector_rbegin(self)

    def rend(self):
        return _pycautodoc.AutoDocExampleVector_rend(self)

    def clear(self):
        return _pycautodoc.AutoDocExampleVector_clear(self)

    def get_allocator(self):
        return _pycautodoc.AutoDocExampleVector_get_allocator(self)

    def pop_back(self):
        return _pycautodoc.AutoDocExampleVector_pop_back(self)

    def erase(self, *args):
        return _pycautodoc.AutoDocExampleVector_erase(self, *args)

    def __init__(self, *args):
        _pycautodoc.AutoDocExampleVector_swiginit(self, _pycautodoc.new_AutoDocExampleVector(*args))

    def push_back(self, x):
        return _pycautodoc.AutoDocExampleVector_push_back(self, x)

    def front(self):
        return _pycautodoc.AutoDocExampleVector_front(self)

    def back(self):
        return _pycautodoc.AutoDocExampleVector_back(self)

    def assign(self, n, x):
        return _pycautodoc.AutoDocExampleVector_assign(self, n, x)

    def resize(self, *args):
        return _pycautodoc.AutoDocExampleVector_resize(self, *args)

    def insert(self, *args):
        return _pycautodoc.AutoDocExampleVector_insert(self, *args)

    def reserve(self, n):
        return _pycautodoc.AutoDocExampleVector_reserve(self, n)

    def capacity(self):
        return _pycautodoc.AutoDocExampleVector_capacity(self)
    __swig_destroy__ = _pycautodoc.delete_AutoDocExampleVector

# Register AutoDocExampleVector in _pycautodoc:
_pycautodoc.AutoDocExampleVector_swigregister(AutoDocExampleVector)

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

    def iterator(self):
        return _pycautodoc.svector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        return _pycautodoc.svector___nonzero__(self)

    def __bool__(self):
        return _pycautodoc.svector___bool__(self)

    def __len__(self):
        return _pycautodoc.svector___len__(self)

    def __getslice__(self, i, j):
        return _pycautodoc.svector___getslice__(self, i, j)

    def __setslice__(self, *args):
        return _pycautodoc.svector___setslice__(self, *args)

    def __delslice__(self, i, j):
        return _pycautodoc.svector___delslice__(self, i, j)

    def __delitem__(self, *args):
        return _pycautodoc.svector___delitem__(self, *args)

    def __getitem__(self, *args):
        return _pycautodoc.svector___getitem__(self, *args)

    def __setitem__(self, *args):
        return _pycautodoc.svector___setitem__(self, *args)

    def pop(self):
        return _pycautodoc.svector_pop(self)

    def append(self, x):
        return _pycautodoc.svector_append(self, x)

    def empty(self):
        return _pycautodoc.svector_empty(self)

    def size(self):
        return _pycautodoc.svector_size(self)

    def swap(self, v):
        return _pycautodoc.svector_swap(self, v)

    def begin(self):
        return _pycautodoc.svector_begin(self)

    def end(self):
        return _pycautodoc.svector_end(self)

    def rbegin(self):
        return _pycautodoc.svector_rbegin(self)

    def rend(self):
        return _pycautodoc.svector_rend(self)

    def clear(self):
        return _pycautodoc.svector_clear(self)

    def get_allocator(self):
        return _pycautodoc.svector_get_allocator(self)

    def pop_back(self):
        return _pycautodoc.svector_pop_back(self)

    def erase(self, *args):
        return _pycautodoc.svector_erase(self, *args)

    def __init__(self, *args):
        _pycautodoc.svector_swiginit(self, _pycautodoc.new_svector(*args))

    def push_back(self, x):
        return _pycautodoc.svector_push_back(self, x)

    def front(self):
        return _pycautodoc.svector_front(self)

    def back(self):
        return _pycautodoc.svector_back(self)

    def assign(self, n, x):
        return _pycautodoc.svector_assign(self, n, x)

    def resize(self, *args):
        return _pycautodoc.svector_resize(self, *args)

    def insert(self, *args):
        return _pycautodoc.svector_insert(self, *args)

    def reserve(self, n):
        return _pycautodoc.svector_reserve(self, n)

    def capacity(self):
        return _pycautodoc.svector_capacity(self)
    __swig_destroy__ = _pycautodoc.delete_svector

# Register svector in _pycautodoc:
_pycautodoc.svector_swigregister(svector)

class AutoDoc(object):
    r"""

    Description
    --------------------
        The user interface class in PyAutoDoc that initiates the
        transfer of doxygen documentation from C++ to Python. A
        comprehensive PyAutoDoc tutorial can be found on the
        documentation main page.

    """

    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"""

        ********************
        *    Version 1     *
        ********************
        AutoDoc(fname)

        Description
        --------------------
            Use this constructor if you want to preserve C++ types
            in the python documentation.

        Parameters
        --------------------
        fname: str
            The C++ header file name that contains the C++
            doxygen documentation

        ********************
        *    Version 2     *
        ********************
        AutoDoc(fname, cppPyTypes)

        Description
        --------------------
            Use this constructor if you want to replace C++ types
            with the Python types defined in the cppPyTypes parameter.

        Parameters
        --------------------
        fname: str
            The C++ header file name that contains the C++
            doxygen documentation

        cppPyTypes: dict[str:str]
            Map defining the C++/Python type
            substitutions, where the keys are the C++ types, and the values
            are the Python types. The same substitutions with be performed
            for both parameters and functions. In python, cppPyTypes will be
            a string/string dictionary.

        ********************
        *    Version 3     *
        ********************
        AutoDoc(fname, parameterCppPyTypes, functionCppPyTypes)

        Description
        --------------------
            Use this constructor if you want to replace the C++
            types with Python types, but want to use different types for
            the parameters and functions. This is useful when a wrapped
            Python function can accept multiple "similar", but can only
            return one specific type.

        Parameters
        --------------------
        fname: str
            The C++ header file name that contains the C++
            doxygen documentation

        parameterCppPyTypes: dict[str:str]
            Map defining the C++/Python type
            substitutions used for parameters, where the keys are the C++
            types, and the values
            are the Python types. In python, parameterCppPyTypes will be
            a string/string dictionary.

        functionCppPyTypes: dict[str:str]
            Map defining the C++/Python type
            substitutions used for functions, where the keys are the C++
            types, and the values
            are the Python types. In python, functionCppPyTypes will be
            a string/string dictionary.

        """
        _pycautodoc.AutoDoc_swiginit(self, _pycautodoc.new_AutoDoc(*args))

    def functionCppPyTypes(self):
        return _pycautodoc.AutoDoc_functionCppPyTypes(self)

    def parameterCppPyTypes(self):
        return _pycautodoc.AutoDoc_parameterCppPyTypes(self)

    def functions(self):
        return _pycautodoc.AutoDoc_functions(self)

    def classes(self):
        return _pycautodoc.AutoDoc_classes(self)

    def writeSwigDocString(self, fname):
        r"""
        writeSwigDocString(fname)->None

        Description
        --------------------
            Writes a SWIG docstring feature directive interface file.

        Parameters
        --------------------
        fname: str
            The name of the output SWIG interface file. The
            interface file has a ".i" extension and it's path must be in an
            include directive in the primary SWIG interface file.

        """
        return _pycautodoc.AutoDoc_writeSwigDocString(self, fname)
    __swig_destroy__ = _pycautodoc.delete_AutoDoc

# Register AutoDoc in _pycautodoc:
_pycautodoc.AutoDoc_swigregister(AutoDoc)

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

    def __init__(self, *args):
        _pycautodoc.AutoDocReturn_swiginit(self, _pycautodoc.new_AutoDocReturn(*args))
    __swig_destroy__ = _pycautodoc.delete_AutoDocReturn

    def description(self):
        return _pycautodoc.AutoDocReturn_description(self)

    def type(self, *args):
        return _pycautodoc.AutoDocReturn_type(self, *args)

    def swigDocString(self):
        return _pycautodoc.AutoDocReturn_swigDocString(self)

    def __repr__(self):
        return _pycautodoc.AutoDocReturn___repr__(self)

# Register AutoDocReturn in _pycautodoc:
_pycautodoc.AutoDocReturn_swigregister(AutoDocReturn)

class AutoDocFunction(object):
    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):
        _pycautodoc.AutoDocFunction_swiginit(self, _pycautodoc.new_AutoDocFunction(*args))
    __swig_destroy__ = _pycautodoc.delete_AutoDocFunction

    def name(self):
        return _pycautodoc.AutoDocFunction_name(self)

    def type(self):
        return _pycautodoc.AutoDocFunction_type(self)

    def description(self):
        return _pycautodoc.AutoDocFunction_description(self)

    def parameters(self):
        return _pycautodoc.AutoDocFunction_parameters(self)

    def returnInfo(self):
        return _pycautodoc.AutoDocFunction_returnInfo(self)

    def signature(self):
        return _pycautodoc.AutoDocFunction_signature(self)

    def pythonExamples(self):
        return _pycautodoc.AutoDocFunction_pythonExamples(self)

    def cppExamples(self):
        return _pycautodoc.AutoDocFunction_cppExamples(self)

    def notes(self):
        return _pycautodoc.AutoDocFunction_notes(self)

    def className(self):
        return _pycautodoc.AutoDocFunction_className(self)

    def swigDocString(self):
        return _pycautodoc.AutoDocFunction_swigDocString(self)

    def overloadedSwigDocString(self):
        return _pycautodoc.AutoDocFunction_overloadedSwigDocString(self)

    def generateSwigDocString(self):
        return _pycautodoc.AutoDocFunction_generateSwigDocString(self)

    def writeSwigDocString(self, fname, overwrite):
        return _pycautodoc.AutoDocFunction_writeSwigDocString(self, fname, overwrite)

    def pyType(self):
        return _pycautodoc.AutoDocFunction_pyType(self)

    def functionCppPyTypes(self):
        return _pycautodoc.AutoDocFunction_functionCppPyTypes(self)

    def parameterCppPyTypes(self):
        return _pycautodoc.AutoDocFunction_parameterCppPyTypes(self)

    def generateOverloadedSwigDocString(self, version):
        return _pycautodoc.AutoDocFunction_generateOverloadedSwigDocString(self, version)

    def swigDocStringPrefix(self):
        return _pycautodoc.AutoDocFunction_swigDocStringPrefix(self)

# Register AutoDocFunction in _pycautodoc:
_pycautodoc.AutoDocFunction_swigregister(AutoDocFunction)

class AutoDocClass(object):
    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):
        _pycautodoc.AutoDocClass_swiginit(self, _pycautodoc.new_AutoDocClass(*args))

    def methods(self):
        return _pycautodoc.AutoDocClass_methods(self)

    def overloadedMethods(self):
        return _pycautodoc.AutoDocClass_overloadedMethods(self)

    def description(self):
        return _pycautodoc.AutoDocClass_description(self)

    def pythonExamples(self):
        return _pycautodoc.AutoDocClass_pythonExamples(self)

    def cppExamples(self):
        return _pycautodoc.AutoDocClass_cppExamples(self)

    def name(self):
        return _pycautodoc.AutoDocClass_name(self)

    def classes(self):
        return _pycautodoc.AutoDocClass_classes(self)

    def generateSwigDocString(self):
        return _pycautodoc.AutoDocClass_generateSwigDocString(self)

    def writeSwigDocString(self, fname, overwrite):
        return _pycautodoc.AutoDocClass_writeSwigDocString(self, fname, overwrite)

    def swigDocString(self):
        return _pycautodoc.AutoDocClass_swigDocString(self)

    def functionCppPyTypes(self):
        return _pycautodoc.AutoDocClass_functionCppPyTypes(self)

    def parameterCppPyTypes(self):
        return _pycautodoc.AutoDocClass_parameterCppPyTypes(self)
    __swig_destroy__ = _pycautodoc.delete_AutoDocClass

# Register AutoDocClass in _pycautodoc:
_pycautodoc.AutoDocClass_swigregister(AutoDocClass)

class AutoDocExample(object):
    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):
        _pycautodoc.AutoDocExample_swiginit(self, _pycautodoc.new_AutoDocExample(*args))
    __swig_destroy__ = _pycautodoc.delete_AutoDocExample

    def str(self):
        return _pycautodoc.AutoDocExample_str(self)

    def language(self):
        return _pycautodoc.AutoDocExample_language(self)

    def swigDocString(self):
        return _pycautodoc.AutoDocExample_swigDocString(self)

# Register AutoDocExample in _pycautodoc:
_pycautodoc.AutoDocExample_swigregister(AutoDocExample)

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

    def __init__(self, *args):
        _pycautodoc.AutoDocParameter_swiginit(self, _pycautodoc.new_AutoDocParameter(*args))
    __swig_destroy__ = _pycautodoc.delete_AutoDocParameter

    def name(self):
        return _pycautodoc.AutoDocParameter_name(self)

    def type(self, *args):
        return _pycautodoc.AutoDocParameter_type(self, *args)

    def description(self):
        return _pycautodoc.AutoDocParameter_description(self)

    def swigDocString(self):
        return _pycautodoc.AutoDocParameter_swigDocString(self)

    def pyType(self):
        return _pycautodoc.AutoDocParameter_pyType(self)

    def __repr__(self):
        return _pycautodoc.AutoDocParameter___repr__(self)

# Register AutoDocParameter in _pycautodoc:
_pycautodoc.AutoDocParameter_swigregister(AutoDocParameter)

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

    def __init__(self, *args):
        _pycautodoc.AutoDocDescription_swiginit(self, _pycautodoc.new_AutoDocDescription(*args))
    __swig_destroy__ = _pycautodoc.delete_AutoDocDescription

    def str(self):
        return _pycautodoc.AutoDocDescription_str(self)

    def swigDocString(self):
        return _pycautodoc.AutoDocDescription_swigDocString(self)

    def __repr__(self):
        return _pycautodoc.AutoDocDescription___repr__(self)

# Register AutoDocDescription in _pycautodoc:
_pycautodoc.AutoDocDescription_swigregister(AutoDocDescription)


def escapeQuotes(str):
    return _pycautodoc.escapeQuotes(str)

def docStringStart(line):
    return _pycautodoc.docStringStart(line)

def docStringEnd(line):
    return _pycautodoc.docStringEnd(line)

def cleanDocStringLine(line):
    return _pycautodoc.cleanDocStringLine(line)

def removeLeadingWhiteSpace(str):
    return _pycautodoc.removeLeadingWhiteSpace(str)

def removeTrailingWhiteSpace(str):
    return _pycautodoc.removeTrailingWhiteSpace(str)

def parseFunctionTypeAndName(line, functionType, functionName):
    return _pycautodoc.parseFunctionTypeAndName(line, functionType, functionName)

def getDocStringType(_is, line):
    return _pycautodoc.getDocStringType(_is, line)

def parseType(line):
    return _pycautodoc.parseType(line)

def indentSwigDocStringLine(str):
    return _pycautodoc.indentSwigDocStringLine(str)

def processAutoDocIgnore(_is, line, ignoreType):
    return _pycautodoc.processAutoDocIgnore(_is, line, ignoreType)

def substringInString(str, substr):
    return _pycautodoc.substringInString(str, substr)

def parseExampleFileName(line, doxygenExamplePath):
    return _pycautodoc.parseExampleFileName(line, doxygenExamplePath)


