1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
#include <grass/gis.h>
#include <grass/raster.h>
#include <grass/graphics.h>
/*!
* \brief flush graphics
*
* Send all pending graphics commands to the graphics driver.
* This is done automatically when graphics input requests are made.
* Generally this is only needed for interactive graphics.
*
* \param void
* \return int
*/
void R_flush(void)
{
R_stabilize();
}
void R_pad_perror(const char *msg, int code)
{
const char *err;
switch (code) {
case OK:
err = "";
break;
case NO_CUR_PAD:
err = "no current pad";
break;
case NO_PAD:
err = "pad not found";
break;
case NO_MEMORY:
err = "out of memory";
break;
case NO_ITEM:
err = "item not found";
break;
case ILLEGAL:
err = "illegal request";
break;
case DUPLICATE:
err = "duplicate name";
break;
default:
err = "unknown error";
break;
}
fprintf(stderr, "%s%s%s\n", msg, *msg ? " : " : "", err);
}
void R_pad_freelist(char **list, int count)
{
int i;
if (count <= 0)
return;
for (i = 0; i < count; i++)
G_free(list[i]);
G_free(list);
}
|