Source code for siconos.control.observer

# This file was automatically generated by SWIG (http://www.swig.org).
# Version 4.0.2
#
# 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 _sicpyobserver
else:
    import _sicpyobserver

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


import weakref

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__ = _sicpyobserver.delete_SwigPyIterator

    def value(self) -> "PyObject *":
        return _sicpyobserver.SwigPyIterator_value(self)

    def incr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _sicpyobserver.SwigPyIterator_incr(self, n)

    def decr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _sicpyobserver.SwigPyIterator_decr(self, n)

    def distance(self, x: "SwigPyIterator") -> "ptrdiff_t":
        return _sicpyobserver.SwigPyIterator_distance(self, x)

    def equal(self, x: "SwigPyIterator") -> "bool":
        return _sicpyobserver.SwigPyIterator_equal(self, x)

    def copy(self) -> "swig::SwigPyIterator *":
        return _sicpyobserver.SwigPyIterator_copy(self)

    def next(self) -> "PyObject *":
        return _sicpyobserver.SwigPyIterator_next(self)

    def __next__(self) -> "PyObject *":
        return _sicpyobserver.SwigPyIterator___next__(self)

    def previous(self) -> "PyObject *":
        return _sicpyobserver.SwigPyIterator_previous(self)

    def advance(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _sicpyobserver.SwigPyIterator_advance(self, n)

    def __eq__(self, x: "SwigPyIterator") -> "bool":
        return _sicpyobserver.SwigPyIterator___eq__(self, x)

    def __ne__(self, x: "SwigPyIterator") -> "bool":
        return _sicpyobserver.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _sicpyobserver.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _sicpyobserver.SwigPyIterator___isub__(self, n)

    def __add__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _sicpyobserver.SwigPyIterator___add__(self, n)

    def __sub__(self, *args) -> "ptrdiff_t":
        return _sicpyobserver.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

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

SHARED_PTR_DISOWN = _sicpyobserver.SHARED_PTR_DISOWN
[docs] class nullDeleter(object): r""" Using a shared_ptr to hold a pointer to a statically allocated object use create<type>SPtr(<type> &x) cf http://www.boost.org/doc/ """ 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 __call__(self, arg2: "void const *") -> "void": return _sicpyobserver.nullDeleter___call__(self, arg2) __swig_destroy__ = _sicpyobserver.delete_nullDeleter
# Register nullDeleter in _sicpyobserver: _sicpyobserver.nullDeleter_swigregister(nullDeleter) class VectorOfVectors(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) -> "swig::SwigPyIterator *": return _sicpyobserver.VectorOfVectors_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpyobserver.VectorOfVectors___nonzero__(self) def __bool__(self) -> "bool": return _sicpyobserver.VectorOfVectors___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< SiconosVector > >::size_type": return _sicpyobserver.VectorOfVectors___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< SiconosVector > >::difference_type", j: "std::vector< std::shared_ptr< SiconosVector > >::difference_type") -> "std::vector< std::shared_ptr< SiconosVector >,std::allocator< std::shared_ptr< SiconosVector > > > *": return _sicpyobserver.VectorOfVectors___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpyobserver.VectorOfVectors___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< SiconosVector > >::difference_type", j: "std::vector< std::shared_ptr< SiconosVector > >::difference_type") -> "void": return _sicpyobserver.VectorOfVectors___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpyobserver.VectorOfVectors___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< SiconosVector > >::value_type const &": return _sicpyobserver.VectorOfVectors___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpyobserver.VectorOfVectors___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< SiconosVector > >::value_type": return _sicpyobserver.VectorOfVectors_pop(self) def append(self, x: "std::vector< std::shared_ptr< SiconosVector > >::value_type const &") -> "void": return _sicpyobserver.VectorOfVectors_append(self, x) def empty(self) -> "bool": return _sicpyobserver.VectorOfVectors_empty(self) def size(self) -> "std::vector< std::shared_ptr< SiconosVector > >::size_type": return _sicpyobserver.VectorOfVectors_size(self) def swap(self, v: "VectorOfVectors") -> "void": return _sicpyobserver.VectorOfVectors_swap(self, v) def begin(self) -> "std::vector< std::shared_ptr< SiconosVector > >::iterator": return _sicpyobserver.VectorOfVectors_begin(self) def end(self) -> "std::vector< std::shared_ptr< SiconosVector > >::iterator": return _sicpyobserver.VectorOfVectors_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< SiconosVector > >::reverse_iterator": return _sicpyobserver.VectorOfVectors_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< SiconosVector > >::reverse_iterator": return _sicpyobserver.VectorOfVectors_rend(self) def clear(self) -> "void": return _sicpyobserver.VectorOfVectors_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< SiconosVector > >::allocator_type": return _sicpyobserver.VectorOfVectors_get_allocator(self) def pop_back(self) -> "void": return _sicpyobserver.VectorOfVectors_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< SiconosVector > >::iterator": return _sicpyobserver.VectorOfVectors_erase(self, *args) def __init__(self, *args): _sicpyobserver.VectorOfVectors_swiginit(self, _sicpyobserver.new_VectorOfVectors(*args)) def push_back(self, x: "std::vector< std::shared_ptr< SiconosVector > >::value_type const &") -> "void": return _sicpyobserver.VectorOfVectors_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< SiconosVector > >::value_type const &": return _sicpyobserver.VectorOfVectors_front(self) def back(self) -> "std::vector< std::shared_ptr< SiconosVector > >::value_type const &": return _sicpyobserver.VectorOfVectors_back(self) def assign(self, n: "std::vector< std::shared_ptr< SiconosVector > >::size_type", x: "std::vector< std::shared_ptr< SiconosVector > >::value_type const &") -> "void": return _sicpyobserver.VectorOfVectors_assign(self, n, x) def resize(self, *args) -> "void": return _sicpyobserver.VectorOfVectors_resize(self, *args) def insert(self, *args) -> "void": return _sicpyobserver.VectorOfVectors_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< SiconosVector > >::size_type") -> "void": return _sicpyobserver.VectorOfVectors_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< SiconosVector > >::size_type": return _sicpyobserver.VectorOfVectors_capacity(self) __swig_destroy__ = _sicpyobserver.delete_VectorOfVectors # Register VectorOfVectors in _sicpyobserver: _sicpyobserver.VectorOfVectors_swigregister(VectorOfVectors) class VectorOfBlockVectors(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) -> "swig::SwigPyIterator *": return _sicpyobserver.VectorOfBlockVectors_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpyobserver.VectorOfBlockVectors___nonzero__(self) def __bool__(self) -> "bool": return _sicpyobserver.VectorOfBlockVectors___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< BlockVector > >::size_type": return _sicpyobserver.VectorOfBlockVectors___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< BlockVector > >::difference_type", j: "std::vector< std::shared_ptr< BlockVector > >::difference_type") -> "std::vector< std::shared_ptr< BlockVector >,std::allocator< std::shared_ptr< BlockVector > > > *": return _sicpyobserver.VectorOfBlockVectors___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpyobserver.VectorOfBlockVectors___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< BlockVector > >::difference_type", j: "std::vector< std::shared_ptr< BlockVector > >::difference_type") -> "void": return _sicpyobserver.VectorOfBlockVectors___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpyobserver.VectorOfBlockVectors___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< BlockVector > >::value_type const &": return _sicpyobserver.VectorOfBlockVectors___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpyobserver.VectorOfBlockVectors___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< BlockVector > >::value_type": return _sicpyobserver.VectorOfBlockVectors_pop(self) def append(self, x: "std::vector< std::shared_ptr< BlockVector > >::value_type const &") -> "void": return _sicpyobserver.VectorOfBlockVectors_append(self, x) def empty(self) -> "bool": return _sicpyobserver.VectorOfBlockVectors_empty(self) def size(self) -> "std::vector< std::shared_ptr< BlockVector > >::size_type": return _sicpyobserver.VectorOfBlockVectors_size(self) def swap(self, v: "VectorOfBlockVectors") -> "void": return _sicpyobserver.VectorOfBlockVectors_swap(self, v) def begin(self) -> "std::vector< std::shared_ptr< BlockVector > >::iterator": return _sicpyobserver.VectorOfBlockVectors_begin(self) def end(self) -> "std::vector< std::shared_ptr< BlockVector > >::iterator": return _sicpyobserver.VectorOfBlockVectors_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< BlockVector > >::reverse_iterator": return _sicpyobserver.VectorOfBlockVectors_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< BlockVector > >::reverse_iterator": return _sicpyobserver.VectorOfBlockVectors_rend(self) def clear(self) -> "void": return _sicpyobserver.VectorOfBlockVectors_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< BlockVector > >::allocator_type": return _sicpyobserver.VectorOfBlockVectors_get_allocator(self) def pop_back(self) -> "void": return _sicpyobserver.VectorOfBlockVectors_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< BlockVector > >::iterator": return _sicpyobserver.VectorOfBlockVectors_erase(self, *args) def __init__(self, *args): _sicpyobserver.VectorOfBlockVectors_swiginit(self, _sicpyobserver.new_VectorOfBlockVectors(*args)) def push_back(self, x: "std::vector< std::shared_ptr< BlockVector > >::value_type const &") -> "void": return _sicpyobserver.VectorOfBlockVectors_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< BlockVector > >::value_type const &": return _sicpyobserver.VectorOfBlockVectors_front(self) def back(self) -> "std::vector< std::shared_ptr< BlockVector > >::value_type const &": return _sicpyobserver.VectorOfBlockVectors_back(self) def assign(self, n: "std::vector< std::shared_ptr< BlockVector > >::size_type", x: "std::vector< std::shared_ptr< BlockVector > >::value_type const &") -> "void": return _sicpyobserver.VectorOfBlockVectors_assign(self, n, x) def resize(self, *args) -> "void": return _sicpyobserver.VectorOfBlockVectors_resize(self, *args) def insert(self, *args) -> "void": return _sicpyobserver.VectorOfBlockVectors_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< BlockVector > >::size_type") -> "void": return _sicpyobserver.VectorOfBlockVectors_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< BlockVector > >::size_type": return _sicpyobserver.VectorOfBlockVectors_capacity(self) __swig_destroy__ = _sicpyobserver.delete_VectorOfBlockVectors # Register VectorOfBlockVectors in _sicpyobserver: _sicpyobserver.VectorOfBlockVectors_swigregister(VectorOfBlockVectors) class VectorOfMatrices(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) -> "swig::SwigPyIterator *": return _sicpyobserver.VectorOfMatrices_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpyobserver.VectorOfMatrices___nonzero__(self) def __bool__(self) -> "bool": return _sicpyobserver.VectorOfMatrices___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::size_type": return _sicpyobserver.VectorOfMatrices___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< SiconosMatrix > >::difference_type", j: "std::vector< std::shared_ptr< SiconosMatrix > >::difference_type") -> "std::vector< std::shared_ptr< SiconosMatrix >,std::allocator< std::shared_ptr< SiconosMatrix > > > *": return _sicpyobserver.VectorOfMatrices___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpyobserver.VectorOfMatrices___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< SiconosMatrix > >::difference_type", j: "std::vector< std::shared_ptr< SiconosMatrix > >::difference_type") -> "void": return _sicpyobserver.VectorOfMatrices___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpyobserver.VectorOfMatrices___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &": return _sicpyobserver.VectorOfMatrices___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpyobserver.VectorOfMatrices___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::value_type": return _sicpyobserver.VectorOfMatrices_pop(self) def append(self, x: "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &") -> "void": return _sicpyobserver.VectorOfMatrices_append(self, x) def empty(self) -> "bool": return _sicpyobserver.VectorOfMatrices_empty(self) def size(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::size_type": return _sicpyobserver.VectorOfMatrices_size(self) def swap(self, v: "VectorOfMatrices") -> "void": return _sicpyobserver.VectorOfMatrices_swap(self, v) def begin(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::iterator": return _sicpyobserver.VectorOfMatrices_begin(self) def end(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::iterator": return _sicpyobserver.VectorOfMatrices_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::reverse_iterator": return _sicpyobserver.VectorOfMatrices_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::reverse_iterator": return _sicpyobserver.VectorOfMatrices_rend(self) def clear(self) -> "void": return _sicpyobserver.VectorOfMatrices_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::allocator_type": return _sicpyobserver.VectorOfMatrices_get_allocator(self) def pop_back(self) -> "void": return _sicpyobserver.VectorOfMatrices_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< SiconosMatrix > >::iterator": return _sicpyobserver.VectorOfMatrices_erase(self, *args) def __init__(self, *args): _sicpyobserver.VectorOfMatrices_swiginit(self, _sicpyobserver.new_VectorOfMatrices(*args)) def push_back(self, x: "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &") -> "void": return _sicpyobserver.VectorOfMatrices_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &": return _sicpyobserver.VectorOfMatrices_front(self) def back(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &": return _sicpyobserver.VectorOfMatrices_back(self) def assign(self, n: "std::vector< std::shared_ptr< SiconosMatrix > >::size_type", x: "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &") -> "void": return _sicpyobserver.VectorOfMatrices_assign(self, n, x) def resize(self, *args) -> "void": return _sicpyobserver.VectorOfMatrices_resize(self, *args) def insert(self, *args) -> "void": return _sicpyobserver.VectorOfMatrices_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< SiconosMatrix > >::size_type") -> "void": return _sicpyobserver.VectorOfMatrices_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::size_type": return _sicpyobserver.VectorOfMatrices_capacity(self) __swig_destroy__ = _sicpyobserver.delete_VectorOfMatrices # Register VectorOfMatrices in _sicpyobserver: _sicpyobserver.VectorOfMatrices_swigregister(VectorOfMatrices) class VectorOfSMatrices(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) -> "swig::SwigPyIterator *": return _sicpyobserver.VectorOfSMatrices_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpyobserver.VectorOfSMatrices___nonzero__(self) def __bool__(self) -> "bool": return _sicpyobserver.VectorOfSMatrices___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::size_type": return _sicpyobserver.VectorOfSMatrices___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< SimpleMatrix > >::difference_type", j: "std::vector< std::shared_ptr< SimpleMatrix > >::difference_type") -> "std::vector< std::shared_ptr< SimpleMatrix >,std::allocator< std::shared_ptr< SimpleMatrix > > > *": return _sicpyobserver.VectorOfSMatrices___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpyobserver.VectorOfSMatrices___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< SimpleMatrix > >::difference_type", j: "std::vector< std::shared_ptr< SimpleMatrix > >::difference_type") -> "void": return _sicpyobserver.VectorOfSMatrices___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpyobserver.VectorOfSMatrices___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &": return _sicpyobserver.VectorOfSMatrices___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpyobserver.VectorOfSMatrices___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::value_type": return _sicpyobserver.VectorOfSMatrices_pop(self) def append(self, x: "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &") -> "void": return _sicpyobserver.VectorOfSMatrices_append(self, x) def empty(self) -> "bool": return _sicpyobserver.VectorOfSMatrices_empty(self) def size(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::size_type": return _sicpyobserver.VectorOfSMatrices_size(self) def swap(self, v: "VectorOfSMatrices") -> "void": return _sicpyobserver.VectorOfSMatrices_swap(self, v) def begin(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::iterator": return _sicpyobserver.VectorOfSMatrices_begin(self) def end(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::iterator": return _sicpyobserver.VectorOfSMatrices_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::reverse_iterator": return _sicpyobserver.VectorOfSMatrices_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::reverse_iterator": return _sicpyobserver.VectorOfSMatrices_rend(self) def clear(self) -> "void": return _sicpyobserver.VectorOfSMatrices_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::allocator_type": return _sicpyobserver.VectorOfSMatrices_get_allocator(self) def pop_back(self) -> "void": return _sicpyobserver.VectorOfSMatrices_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< SimpleMatrix > >::iterator": return _sicpyobserver.VectorOfSMatrices_erase(self, *args) def __init__(self, *args): _sicpyobserver.VectorOfSMatrices_swiginit(self, _sicpyobserver.new_VectorOfSMatrices(*args)) def push_back(self, x: "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &") -> "void": return _sicpyobserver.VectorOfSMatrices_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &": return _sicpyobserver.VectorOfSMatrices_front(self) def back(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &": return _sicpyobserver.VectorOfSMatrices_back(self) def assign(self, n: "std::vector< std::shared_ptr< SimpleMatrix > >::size_type", x: "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &") -> "void": return _sicpyobserver.VectorOfSMatrices_assign(self, n, x) def resize(self, *args) -> "void": return _sicpyobserver.VectorOfSMatrices_resize(self, *args) def insert(self, *args) -> "void": return _sicpyobserver.VectorOfSMatrices_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< SimpleMatrix > >::size_type") -> "void": return _sicpyobserver.VectorOfSMatrices_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::size_type": return _sicpyobserver.VectorOfSMatrices_capacity(self) __swig_destroy__ = _sicpyobserver.delete_VectorOfSMatrices # Register VectorOfSMatrices in _sicpyobserver: _sicpyobserver.VectorOfSMatrices_swigregister(VectorOfSMatrices) class VectorOfMemories(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) -> "swig::SwigPyIterator *": return _sicpyobserver.VectorOfMemories_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpyobserver.VectorOfMemories___nonzero__(self) def __bool__(self) -> "bool": return _sicpyobserver.VectorOfMemories___bool__(self) def __len__(self) -> "std::vector< SiconosMemory >::size_type": return _sicpyobserver.VectorOfMemories___len__(self) def __getslice__(self, i: "std::vector< SiconosMemory >::difference_type", j: "std::vector< SiconosMemory >::difference_type") -> "std::vector< SiconosMemory,std::allocator< SiconosMemory > > *": return _sicpyobserver.VectorOfMemories___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpyobserver.VectorOfMemories___setslice__(self, *args) def __delslice__(self, i: "std::vector< SiconosMemory >::difference_type", j: "std::vector< SiconosMemory >::difference_type") -> "void": return _sicpyobserver.VectorOfMemories___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpyobserver.VectorOfMemories___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< SiconosMemory >::value_type const &": return _sicpyobserver.VectorOfMemories___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpyobserver.VectorOfMemories___setitem__(self, *args) def pop(self) -> "std::vector< SiconosMemory >::value_type": return _sicpyobserver.VectorOfMemories_pop(self) def append(self, x: "SiconosMemory") -> "void": return _sicpyobserver.VectorOfMemories_append(self, x) def empty(self) -> "bool": return _sicpyobserver.VectorOfMemories_empty(self) def size(self) -> "std::vector< SiconosMemory >::size_type": return _sicpyobserver.VectorOfMemories_size(self) def swap(self, v: "VectorOfMemories") -> "void": return _sicpyobserver.VectorOfMemories_swap(self, v) def begin(self) -> "std::vector< SiconosMemory >::iterator": return _sicpyobserver.VectorOfMemories_begin(self) def end(self) -> "std::vector< SiconosMemory >::iterator": return _sicpyobserver.VectorOfMemories_end(self) def rbegin(self) -> "std::vector< SiconosMemory >::reverse_iterator": return _sicpyobserver.VectorOfMemories_rbegin(self) def rend(self) -> "std::vector< SiconosMemory >::reverse_iterator": return _sicpyobserver.VectorOfMemories_rend(self) def clear(self) -> "void": return _sicpyobserver.VectorOfMemories_clear(self) def get_allocator(self) -> "std::vector< SiconosMemory >::allocator_type": return _sicpyobserver.VectorOfMemories_get_allocator(self) def pop_back(self) -> "void": return _sicpyobserver.VectorOfMemories_pop_back(self) def erase(self, *args) -> "std::vector< SiconosMemory >::iterator": return _sicpyobserver.VectorOfMemories_erase(self, *args) def __init__(self, *args): _sicpyobserver.VectorOfMemories_swiginit(self, _sicpyobserver.new_VectorOfMemories(*args)) def push_back(self, x: "SiconosMemory") -> "void": return _sicpyobserver.VectorOfMemories_push_back(self, x) def front(self) -> "std::vector< SiconosMemory >::value_type const &": return _sicpyobserver.VectorOfMemories_front(self) def back(self) -> "std::vector< SiconosMemory >::value_type const &": return _sicpyobserver.VectorOfMemories_back(self) def assign(self, n: "std::vector< SiconosMemory >::size_type", x: "SiconosMemory") -> "void": return _sicpyobserver.VectorOfMemories_assign(self, n, x) def resize(self, *args) -> "void": return _sicpyobserver.VectorOfMemories_resize(self, *args) def insert(self, *args) -> "void": return _sicpyobserver.VectorOfMemories_insert(self, *args) def reserve(self, n: "std::vector< SiconosMemory >::size_type") -> "void": return _sicpyobserver.VectorOfMemories_reserve(self, n) def capacity(self) -> "std::vector< SiconosMemory >::size_type": return _sicpyobserver.VectorOfMemories_capacity(self) __swig_destroy__ = _sicpyobserver.delete_VectorOfMemories # Register VectorOfMemories in _sicpyobserver: _sicpyobserver.VectorOfMemories_swigregister(VectorOfMemories) class UnsignedIntVector(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) -> "swig::SwigPyIterator *": return _sicpyobserver.UnsignedIntVector_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpyobserver.UnsignedIntVector___nonzero__(self) def __bool__(self) -> "bool": return _sicpyobserver.UnsignedIntVector___bool__(self) def __len__(self) -> "std::vector< unsigned int >::size_type": return _sicpyobserver.UnsignedIntVector___len__(self) def __getslice__(self, i: "std::vector< unsigned int >::difference_type", j: "std::vector< unsigned int >::difference_type") -> "std::vector< unsigned int,std::allocator< unsigned int > > *": return _sicpyobserver.UnsignedIntVector___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpyobserver.UnsignedIntVector___setslice__(self, *args) def __delslice__(self, i: "std::vector< unsigned int >::difference_type", j: "std::vector< unsigned int >::difference_type") -> "void": return _sicpyobserver.UnsignedIntVector___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpyobserver.UnsignedIntVector___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< unsigned int >::value_type const &": return _sicpyobserver.UnsignedIntVector___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpyobserver.UnsignedIntVector___setitem__(self, *args) def pop(self) -> "std::vector< unsigned int >::value_type": return _sicpyobserver.UnsignedIntVector_pop(self) def append(self, x: "std::vector< unsigned int >::value_type const &") -> "void": return _sicpyobserver.UnsignedIntVector_append(self, x) def empty(self) -> "bool": return _sicpyobserver.UnsignedIntVector_empty(self) def size(self) -> "std::vector< unsigned int >::size_type": return _sicpyobserver.UnsignedIntVector_size(self) def swap(self, v: "UnsignedIntVector") -> "void": return _sicpyobserver.UnsignedIntVector_swap(self, v) def begin(self) -> "std::vector< unsigned int >::iterator": return _sicpyobserver.UnsignedIntVector_begin(self) def end(self) -> "std::vector< unsigned int >::iterator": return _sicpyobserver.UnsignedIntVector_end(self) def rbegin(self) -> "std::vector< unsigned int >::reverse_iterator": return _sicpyobserver.UnsignedIntVector_rbegin(self) def rend(self) -> "std::vector< unsigned int >::reverse_iterator": return _sicpyobserver.UnsignedIntVector_rend(self) def clear(self) -> "void": return _sicpyobserver.UnsignedIntVector_clear(self) def get_allocator(self) -> "std::vector< unsigned int >::allocator_type": return _sicpyobserver.UnsignedIntVector_get_allocator(self) def pop_back(self) -> "void": return _sicpyobserver.UnsignedIntVector_pop_back(self) def erase(self, *args) -> "std::vector< unsigned int >::iterator": return _sicpyobserver.UnsignedIntVector_erase(self, *args) def __init__(self, *args): _sicpyobserver.UnsignedIntVector_swiginit(self, _sicpyobserver.new_UnsignedIntVector(*args)) def push_back(self, x: "std::vector< unsigned int >::value_type const &") -> "void": return _sicpyobserver.UnsignedIntVector_push_back(self, x) def front(self) -> "std::vector< unsigned int >::value_type const &": return _sicpyobserver.UnsignedIntVector_front(self) def back(self) -> "std::vector< unsigned int >::value_type const &": return _sicpyobserver.UnsignedIntVector_back(self) def assign(self, n: "std::vector< unsigned int >::size_type", x: "std::vector< unsigned int >::value_type const &") -> "void": return _sicpyobserver.UnsignedIntVector_assign(self, n, x) def resize(self, *args) -> "void": return _sicpyobserver.UnsignedIntVector_resize(self, *args) def insert(self, *args) -> "void": return _sicpyobserver.UnsignedIntVector_insert(self, *args) def reserve(self, n: "std::vector< unsigned int >::size_type") -> "void": return _sicpyobserver.UnsignedIntVector_reserve(self, n) def capacity(self) -> "std::vector< unsigned int >::size_type": return _sicpyobserver.UnsignedIntVector_capacity(self) __swig_destroy__ = _sicpyobserver.delete_UnsignedIntVector # Register UnsignedIntVector in _sicpyobserver: _sicpyobserver.UnsignedIntVector_swigregister(UnsignedIntVector) import siconos.kernel
[docs] class Observer(object): r""" Observers Base Class Abstract class, interface to user-defined observers. An Observer is dedicated to estimate the state of a DynamicalSystem given its dynamics, inputs and a initial estimate of the state. """ 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__ = _sicpyobserver.delete_Observer
[docs] def setId(self, newId: "std::string const &") -> "void": r""" set id of the Observer :type newId: string :param newId: the new id. """ return _sicpyobserver.Observer_setId(self, newId)
[docs] def getId(self) -> "std::string const": r""" get id of the Observer :rtype: string :return: a string """ return _sicpyobserver.Observer_getId(self)
[docs] def getType(self) -> "int": r""" get the type of the Observer (ie class name) :rtype: int :return: an integer """ return _sicpyobserver.Observer_getType(self)
[docs] def setTimeDiscretisation(self, td: "TimeDiscretisation") -> "void": r""" This is derived in child classes if they need to copy the TimeDiscretisation associated with this Sensor :type td: :py:class:`TimeDiscretisation` :param td: the TimeDiscretisation for this Sensor """ return _sicpyobserver.Observer_setTimeDiscretisation(self, td)
[docs] def initialize(self, nsds: "NonSmoothDynamicalSystem", s: "Simulation") -> "void": r""" initialize observer data. :type nsds: :py:class:`NonSmoothDynamicalSystem` :param nsds: current nonsmooth dynamical system :type s: :py:class:`Simulation` :param s: current simulation setup """ return _sicpyobserver.Observer_initialize(self, nsds, s)
[docs] def process(self) -> "void": r""" capture data when the ObserverEvent is processed""" return _sicpyobserver.Observer_process(self)
[docs] def display(self) -> "void": r""" display the data of the Observer on the standard output""" return _sicpyobserver.Observer_display(self)
[docs] def e(self) -> "SP::SiconosVector": r""" get the error e :rtype: :py:class:`SiconosVector` :return: a pointer to e """ return _sicpyobserver.Observer_e(self)
[docs] def xHat(self) -> "SP::SiconosVector": r""" :rtype: :py:class:`SiconosVector` :return: the estimated state """ return _sicpyobserver.Observer_xHat(self)
[docs] def setDS(self, ds: "SP::DynamicalSystem") -> "void": r""" Set the DynamicalSystem used in the Observer :type ds: :py:class:`DynamicalSystem` :param ds: the DynamicalSystem used in the Observer """ return _sicpyobserver.Observer_setDS(self, ds)
[docs] def getInternalNSDS(self) -> "SP::NonSmoothDynamicalSystem": r""" :rtype: :py:class:`NonSmoothDynamicalSystem` :return: the Model used in the Observer """ return _sicpyobserver.Observer_getInternalNSDS(self)
# Register Observer in _sicpyobserver: _sicpyobserver.Observer_swigregister(Observer)
[docs] class LuenbergerObserver(Observer): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _C = property(_sicpyobserver.LuenbergerObserver__C_get, _sicpyobserver.LuenbergerObserver__C_set, doc=r""" the vector defining the measurements (:math:`y = Cx`)""") _L = property(_sicpyobserver.LuenbergerObserver__L_get, _sicpyobserver.LuenbergerObserver__L_set, doc=r""" matrix describing the relation between the control value and sgn(s)""") _theta = property(_sicpyobserver.LuenbergerObserver__theta_get, _sicpyobserver.LuenbergerObserver__theta_set) _pass = property(_sicpyobserver.LuenbergerObserver__pass_get, _sicpyobserver.LuenbergerObserver__pass_set) def __init__(self, *args): r""" *Overload 1:* Constructor with a TimeDiscretisation, a ControlSensor and an initial estimate of the state. :type sensor: ControlSensor :param sensor: the SP::ControlSensor that feed us with measurements :type xHat0: :py:class:`SiconosVector` :param xHat0: the initial guess for the state | *Overload 2:* Constructor with all the data :type sensor: ControlSensor :param sensor: the ControlSensor that feeds the Observer :type xHat0: :py:class:`SiconosVector` :param xHat0: the initial guess for the state :type C: :py:class:`SiconosMatrix` :param C: the observation matrix :type L: :py:class:`SiconosMatrix` :param L: the gain matrix """ if self.__class__ == LuenbergerObserver: _self = None else: _self = self _sicpyobserver.LuenbergerObserver_swiginit(self, _sicpyobserver.new_LuenbergerObserver(_self, *args))
[docs] def process(self) -> "void": r""" Compute the new control law at each event""" return _sicpyobserver.LuenbergerObserver_process(self)
[docs] def initialize(self, nsds: "NonSmoothDynamicalSystem", s: "Simulation") -> "void": r""" Initialization :type nsds: :py:class:`NonSmoothDynamicalSystem` :param nsds: current nonsmooth dynamical system :type s: :py:class:`Simulation` :param s: current simulation setup """ return _sicpyobserver.LuenbergerObserver_initialize(self, nsds, s)
[docs] def setLPtr(self, L: "SP::SiconosMatrix") -> "void": r""" Set the L matrix :type L: :py:class:`SiconosMatrix` :param L: the new L matrix """ return _sicpyobserver.LuenbergerObserver_setLPtr(self, L)
[docs] def setCPtr(self, C: "SP::SiconosMatrix") -> "void": r""" Set the C matrix :type C: :py:class:`SiconosMatrix` :param C: the new C matrix """ return _sicpyobserver.LuenbergerObserver_setCPtr(self, C)
__swig_destroy__ = _sicpyobserver.delete_LuenbergerObserver def __disown__(self): self.this.disown() _sicpyobserver.disown_LuenbergerObserver(self) return weakref.proxy(self)
# Register LuenbergerObserver in _sicpyobserver: _sicpyobserver.LuenbergerObserver_swigregister(LuenbergerObserver)
[docs] class SlidingReducedOrderObserver(Observer): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _C = property(_sicpyobserver.SlidingReducedOrderObserver__C_get, _sicpyobserver.SlidingReducedOrderObserver__C_set, doc=r""" the vector defining the measurements (:math:`y = Cx`)""") _L = property(_sicpyobserver.SlidingReducedOrderObserver__L_get, _sicpyobserver.SlidingReducedOrderObserver__L_set, doc=r""" matrix multiplying the innovation term""") _theta = property(_sicpyobserver.SlidingReducedOrderObserver__theta_get, _sicpyobserver.SlidingReducedOrderObserver__theta_set) _pass = property(_sicpyobserver.SlidingReducedOrderObserver__pass_get, _sicpyobserver.SlidingReducedOrderObserver__pass_set) def __init__(self, *args): r""" *Overload 1:* Constructor with the standard interface :type sensor: ControlSensor :param sensor: the SP::ControlSensor that feed us with measurements :type xHat0: :py:class:`SiconosVector` :param xHat0: the initial guess for the state | *Overload 2:* Constructor with all the data :type sensor: ControlSensor :param sensor: the sensor that feeds the Observer :type xHat0: :py:class:`SiconosVector` :param xHat0: the initial guess for the state :type C: :py:class:`SimpleMatrix` :param C: observation matrix :type L: :py:class:`SimpleMatrix` :param L: gain matrix """ if self.__class__ == SlidingReducedOrderObserver: _self = None else: _self = self _sicpyobserver.SlidingReducedOrderObserver_swiginit(self, _sicpyobserver.new_SlidingReducedOrderObserver(_self, *args))
[docs] def process(self) -> "void": r""" Update the estimate at each event""" return _sicpyobserver.SlidingReducedOrderObserver_process(self)
[docs] def initialize(self, nsds: "NonSmoothDynamicalSystem", s: "Simulation") -> "void": r""" Initialization :type nsds: :py:class:`NonSmoothDynamicalSystem` :param nsds: current nonsmooth dynamical system :type s: :py:class:`Simulation` :param s: current simulation setup """ return _sicpyobserver.SlidingReducedOrderObserver_initialize(self, nsds, s)
[docs] def setLPtr(self, L: "SP::SimpleMatrix") -> "void": r""" Set the L matrix :type L: :py:class:`SimpleMatrix` :param L: the new L matrix """ return _sicpyobserver.SlidingReducedOrderObserver_setLPtr(self, L)
[docs] def setCPtr(self, C: "SP::SimpleMatrix") -> "void": r""" Set the C matrix :type C: :py:class:`SimpleMatrix` :param C: the new C matrix """ return _sicpyobserver.SlidingReducedOrderObserver_setCPtr(self, C)
__swig_destroy__ = _sicpyobserver.delete_SlidingReducedOrderObserver def __disown__(self): self.this.disown() _sicpyobserver.disown_SlidingReducedOrderObserver(self) return weakref.proxy(self)
# Register SlidingReducedOrderObserver in _sicpyobserver: _sicpyobserver.SlidingReducedOrderObserver_swigregister(SlidingReducedOrderObserver)