1 /* Image drawing. These are the actual slave-side routines. */
3 #ifndef EL__OSDEP_IMAGE_H
4 #define EL__OSDEP_IMAGE_H
6 /* These routines are not directly available from "normal" code. To request
7 * image drawing, always use the terminal/image.h interface. */
11 /* This is the slave-side image rendering context. */
13 /* Screen resolution in pixels. */
16 /* Cached per-image information. */
18 /* Bounding box of the image. */
24 /* Pipe to the image drawing helper. */
29 extern struct image_ctx
*init_images(); // NULL if N/A
30 extern void done_images(struct image_ctx
*img
);
32 extern void slave_images_getres(struct image_ctx
*img
, int *xres
, int *yres
);
33 extern void slave_render_image(struct image_ctx
*img
, int imgid
, struct box
*box
, unsigned char *file
);
34 extern void slave_move_image(struct image_ctx
*img
, int imgid
, int x
, int y
);
35 extern void slave_hide_image(struct image_ctx
*img
, int imgid
);
36 extern void slave_hide_image_region(struct image_ctx
*img
, struct box
*region
);
37 extern void slave_sync_images(struct image_ctx
*img
);
39 /* This function does not require the slave-specific context and it is
40 * called directly from the master. */
41 extern void image_size(unsigned char *file
, int *w
, int *h
);