static PyObject* gridloop1(PyObject* self, PyObject* args_) { /* arguments: a, xcoor, ycoor */ try { PWOSequence args (args_); NumPyArray_Float a ((PyArrayObject*) ((PyObject*) args[0])); NumPyArray_Float xcoor ((PyArrayObject*) ((PyObject*) args[1])); NumPyArray_Float ycoor ((PyArrayObject*) ((PyObject*) args[2])); PWOCallable func1 (args[3]); // work with a, xcoor, ycoor, and func1 ... return PWONone(); } catch (PWException e) { return e; } }