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