File: cairodriver.h

package info (click to toggle)
grass 6.4.4-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 104,028 kB
  • ctags: 40,409
  • sloc: ansic: 419,980; python: 63,559; tcl: 46,692; cpp: 29,791; sh: 18,564; makefile: 7,000; xml: 3,505; yacc: 561; perl: 559; lex: 480; sed: 70; objc: 7
file content (80 lines) | stat: -rw-r--r-- 2,185 bytes parent folder | download | duplicates (2)
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
68
69
70
71
72
73
74
75
76
77
78
79
80
#ifndef __CAIRODRIVER_H__
#define __CAIRODRIVER_H__

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include <cairo.h>

#include <grass/config.h>
#include <grass/gis.h>

#include "driver.h"

#define DEFAULT_FILE_NAME "map.png"

#define HEADER_SIZE 64

/* Scale for converting colors from [0..255] to cairo's [0.0..1.0] */
#define COLORSCALE (1.0/255.0)
#define CAIROCOLOR(a) (((double)(a))*COLORSCALE)

/* File types */
#define FTYPE_UNKNOWN 0
#define FTYPE_PPM 1
#define FTYPE_BMP 2
#define FTYPE_PNG 3
#define FTYPE_PDF 4
#define FTYPE_PS  5
#define FTYPE_SVG 6
#define FTYPE_X11 7

extern cairo_surface_t *surface;
extern cairo_t *cairo;

extern char *file_name;
extern int file_type;
extern int width, height, stride;
extern unsigned char *grid;
extern int clip_left, clip_right, clip_top, clip_bottom;
extern int auto_write;
extern double bgcolor_r, bgcolor_g, bgcolor_b, bgcolor_a;
extern int modified;
extern int auto_write;
extern int mapped;

extern const struct driver *Cairo_Driver(void);

extern void Cairo_Client_Close(void);
extern int Cairo_Graph_set(int, char **);
extern void Cairo_Graph_close(void);
extern void Cairo_Box_abs(int, int, int, int);
extern void Cairo_Set_window(int, int, int, int);
extern void Cairo_draw_line(int, int, int, int);
extern void Cairo_draw_bitmap(int, int, int, const unsigned char *);
extern void Cairo_draw_point(int, int);
extern void Cairo_color(int);
extern int Cairo_lookup_color(int, int, int);
extern void Cairo_Erase(void);
extern void Cairo_begin_scaled_raster(int, int[2][2], int[2][2]);
extern int Cairo_scaled_raster(int, int,
			       const unsigned char *, const unsigned char *,
			       const unsigned char *, const unsigned char *);
extern void Cairo_end_scaled_raster(void);
extern void Cairo_Line_width(int);
extern void Cairo_Polygon_abs(const int *, const int *, int);
extern void Cairo_Polyline_abs(const int *, const int *, int);
extern void Cairo_Respond(void);

/* read.c */
extern void read_image(void);
extern void read_ppm(void);
extern void read_bmp(void);

/* write.c */
extern void write_image(void);
extern void write_ppm(void);
extern void write_bmp(void);

#endif /* __CAIRODRIVER_H__ */