7 #ifdef BUILD_ENGINE_SOFTWARE_XLIB
9 # include <X11/Xutil.h>
10 # include <X11/Xatom.h>
11 # include <X11/extensions/XShm.h>
14 #ifdef BUILD_ENGINE_SOFTWARE_XCB
16 # include <xcb/xcb_image.h>
20 typedef enum _Outbuf_Depth Outbuf_Depth;
26 OUTBUF_DEPTH_RGB_16BPP_565_565_DITHERED,
27 OUTBUF_DEPTH_RGB_16BPP_555_555_DITHERED,
28 OUTBUF_DEPTH_RGB_16BPP_444_444_DITHERED,
29 OUTBUF_DEPTH_RGB_16BPP_565_444_DITHERED,
30 OUTBUF_DEPTH_RGB_32BPP_888_8888,
34 typedef struct _Outbuf Outbuf;
46 #ifdef BUILD_ENGINE_SOFTWARE_XLIB
57 unsigned char swap : 1;
58 unsigned char bit_swap : 1;
61 #ifdef BUILD_ENGINE_SOFTWARE_XCB
63 xcb_connection_t *conn;
67 xcb_visualtype_t *vis;
73 unsigned char swap : 1;
74 unsigned char bit_swap : 1;
82 /* 1 big buffer for updates - flush on idle_flush */
84 Eina_List *onebuf_regions;
86 /* a list of pending regions to write to the target */
87 Eina_List *pending_writes;
88 /* a list of previous frame pending regions to write to the target */
89 Eina_List *prev_pending_writes;
91 unsigned char mask_dither : 1;
92 unsigned char destination_alpha : 1;
93 unsigned char debug : 1;
94 unsigned char synced : 1;
99 void evas_software_xlib_x_init (void);
100 void evas_software_xcb_x_init (void);