1 #ifndef _EVAS_ENGINE_SOFTWARE_X11_H
2 # define _EVAS_ENGINE_SOFTWARE_X11_H
6 EVAS_ENGINE_INFO_SOFTWARE_X11_BACKEND_XLIB,
7 EVAS_ENGINE_INFO_SOFTWARE_X11_BACKEND_XCB
8 } Evas_Engine_Info_Software_X11_Backend;
10 typedef struct _Evas_Engine_Info_Software_X11 Evas_Engine_Info_Software_X11;
12 struct _Evas_Engine_Info_Software_X11
14 /* PRIVATE - don't mess with this baby or evas will poke its tongue out */
15 /* at you and make nasty noises */
16 Evas_Engine_Info magic;
18 /* engine specific data & parameters it needs to set up */
21 Evas_Engine_Info_Software_X11_Backend backend;
23 void *connection, *screen;
24 unsigned int drawable, mask;
26 unsigned int colormap;
29 Eina_Bool alloc_grayscale : 1;
31 Eina_Bool shape_dither : 1;
32 Eina_Bool destination_alpha : 1;
33 Eina_Bool track_mask_changes : 1;
38 /* engine specific function calls to query stuff about the destination */
41 void *(*best_visual_get) (int backend, void *connection, int screen);
42 unsigned int (*best_colormap_get) (int backend, void *connection, int screen);
43 int (*best_depth_get) (int backend, void *connection, int screen);
44 void (*region_push_hook)(Evas *e, int x, int y, int w, int h, const void *pixels);
47 unsigned char mask_changed : 1;
49 /* non-blocking or blocking mode */
50 Evas_Engine_Render_Mode render_mode;