3 #include <grass/raster.h>
4 #include <grass/calc.h>
10 int f_sub(
int argc,
const int *argt,
void **args)
19 if (argt[1] != argt[0] || argt[2] != argt[0])
30 if (IS_NULL_C(&arg1[i]) || IS_NULL_C(&arg2[i]))
33 res[i] = arg1[i] - arg2[i];
40 FCELL *arg1 = args[1];
41 FCELL *arg2 = args[2];
44 if (IS_NULL_F(&arg1[i]) || IS_NULL_F(&arg2[i]))
47 res[i] = arg1[i] - arg2[i];
54 DCELL *arg1 = args[1];
55 DCELL *arg2 = args[2];
58 if (IS_NULL_D(&arg1[i]) || IS_NULL_D(&arg2[i]))
61 res[i] = arg1[i] - arg2[i];