diff --git a/scripting/maestro-py.i b/scripting/maestro-py.i index a2187af4d679d4a285d633a8578c7b32235de606..8e5c2c9e2ac029114c7ababcc03c01e645ed0315 100644 --- a/scripting/maestro-py.i +++ b/scripting/maestro-py.i @@ -2,6 +2,16 @@ %include "typemaps.i" %include "stdint.i" %include "cpointer.i" +%include "exception.i" + +/* handling mstro_status return codes: suppress unless an error needs to be indicated. In that case: throw exeption */ +%typemap(out) mstro_status { + if(MSTRO_OK!=$1) { + SWIG_exception(SWIG_RuntimeError, mstro_status_description($1)); + } else { + $result = SWIG_Py_Void(); + } +} %{ #define SWIG_FILE_WITH_INIT