GRASS Programmer's Manual  6.4.3(2013)-r
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Pages
pngdriver/write.c
Go to the documentation of this file.
1 
2 #include <stdio.h>
3 #include <stdlib.h>
4 #include <string.h>
5 
6 #include <grass/config.h>
7 #include <grass/gis.h>
8 #include "pngdriver.h"
9 
10 void write_image(void)
11 {
12  char *p = file_name + strlen(file_name) - 4;
13 
14  if (!modified)
15  return;
16 
17  if (mapped)
18  return;
19 
20  if (G_strcasecmp(p, ".ppm") == 0) {
21  write_ppm();
22  if (has_alpha)
23  write_pgm();
24  }
25  else if (G_strcasecmp(p, ".bmp") == 0)
26  write_bmp();
27 #ifdef HAVE_PNG_H
28  else if (G_strcasecmp(p, ".png") == 0)
29  write_png();
30 #endif
31  else
32  G_fatal_error("write_image: unknown file type: %s", p);
33 
34  modified = 0;
35 }