GRASS Programmer's Manual  6.4.2(2012)
c_divr.c
Go to the documentation of this file.
00001 #include <grass/gis.h>
00002 #include <grass/stats.h>
00003 
00004 void c_divr(DCELL * result, DCELL * values, int n, const void *closure)
00005 {
00006     int count;
00007     DCELL prev;
00008     int i;
00009 
00010     /* sort the array of values, then count differences */
00011 
00012     n = sort_cell(values, n);
00013 
00014     if (n == 0) {
00015         *result = 0;
00016         return;
00017     }
00018 
00019     count = 1;
00020     prev = values[0];
00021 
00022     for (i = 0; i < n; i++)
00023         if (values[i] != prev) {
00024             prev = values[i];
00025             count++;
00026         }
00027 
00028     *result = (DCELL) count;
00029 }
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines