summaryrefslogtreecommitdiffstats
path: root/plug-ins/map-object/map-object-image.h
blob: 189204b361bff6c23cb2effc796c55f8cbf0e8d1 (plain)
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
#ifndef __MAPOBJECT_IMAGE_H__
#define __MAPOBJECT_IMAGE_H__

/* Externally visible variables */
/* ============================ */

extern gint32        input_drawable_id;
extern gint32        output_drawable_id;
extern GeglBuffer   *source_buffer;
extern GeglBuffer   *dest_buffer;

extern gint32        box_drawable_ids[6];
extern GeglBuffer   *box_buffers[6];

extern gint32        cylinder_drawable_ids[2];
extern GeglBuffer   *cylinder_buffers[2];

extern guchar          *preview_rgb_data;
extern gint             preview_rgb_stride;
extern cairo_surface_t *preview_surface;

extern glong    maxcounter, old_depth, max_depth;
extern gint     width, height, image_id;
extern GimpRGB  background;

extern gint border_x1, border_y1, border_x2, border_y2;

/* Externally visible functions */
/* ============================ */

extern gint        image_setup              (gint32        drawable_id,
                                             gint          interactive);
extern glong       in_xy_to_index           (gint          x,
                                             gint          y);
extern glong       out_xy_to_index          (gint          x,
                                             gint          y);
extern gint        checkbounds              (gint          x,
                                             gint          y);
extern GimpRGB     peek                     (gint          x,
                                             gint          y);
extern void        poke                     (gint          x,
                                             gint          y,
                                             GimpRGB      *color,
                                             gpointer      user_data);
extern GimpVector3 int_to_pos               (gint          x,
                                             gint          y);
extern void        pos_to_int               (gdouble       x,
                                             gdouble       y,
                                             gint         *scr_x,
                                             gint         *scr_y);

extern GimpRGB     get_image_color          (gdouble      u,
                                             gdouble      v,
                                             gint        *inside);
extern GimpRGB     get_box_image_color      (gint         image,
                                             gdouble      u,
                                             gdouble      v);
extern GimpRGB     get_cylinder_image_color (gint         image,
                                             gdouble      u,
                                             gdouble      v);

#endif  /* __MAPOBJECT_IMAGE_H__ */