The alternative gridloop1 code (1)

static PyObject *gridloop1(PyObject *self, PyObject *args)
{
  PyArrayObject *a, *xcoor, *ycoor;
  PyObject *func1, *arglist, *result;
  int nx, ny, i;
  double **app;
  double *ap, *xp, *yp;

  /* arguments: a, xcoor, ycoor, func1 */
  /* parsing without checking the pointer types: */
  if (!PyArg_ParseTuple(args, "OOOO", &a, &xcoor, &ycoor, &func1))
    { return NULL; }
  NDIMCHECK(a,     2); TYPECHECK(a,     PyArray_DOUBLE);
  nx = a->dimensions[0];  ny = a->dimensions[1];
  NDIMCHECK(xcoor, 1); DIMCHECK(xcoor, 0, nx);
  TYPECHECK(xcoor, PyArray_DOUBLE);
  NDIMCHECK(ycoor, 1); DIMCHECK(ycoor, 0, ny);
  TYPECHECK(ycoor, PyArray_DOUBLE);
  CALLABLECHECK(func1);

previousnexttable of contents