%module py_diff_stokes_flow_core %{ #include "../include/shape/parametric_shape.h" #include "../include/shape/bezier.h" #include "../include/shape/shape_composition.h" #include "../include/cell/cell.h" #include "../include/scene/scene.h" %} %exception { try { $action } catch (const std::runtime_error& e) { PyErr_SetString(PyExc_RuntimeError, const_cast(e.what())); SWIG_fail; } catch (...) { PyErr_SetString(PyExc_RuntimeError, "Unknown error."); SWIG_fail; } } %include %include %include %include %include "../include/common/config.h" %include "../include/shape/parametric_shape.h" %include "../include/shape/shape_composition.h" %include "../include/cell/cell.h" %include "../include/scene/scene.h" namespace std { %template(StdIntArray2d) array; %template(StdIntArray3d) array; %template(StdRealArray2d) array; %template(StdRealArray3d) array; %template(StdStringVector) vector; %template(StdIntVector) vector; %template(StdRealVector) vector; %template(StdRealVectorVector) vector>; } %template(ParametricShape2d) ParametricShape<2>; %template(ParametricShape3d) ParametricShape<3>; %template(ShapeComposition2d) ShapeComposition<2>; %template(ShapeComposition3d) ShapeComposition<3>; %template(Cell2d) Cell<2>; %template(Cell3d) Cell<3>; %template(Scene2d) Scene<2>; %template(Scene3d) Scene<3>; %include "../include/shape/bezier.h"