Merge commit 'origin/master' into gallium-sw-api-2
[mesa.git] / src / gallium / include / state_tracker / xlib_sw_winsys.h
1 #ifndef XLIB_SW_WINSYS_H
2 #define XLIB_SW_WINSYS_H
3
4 #include "state_tracker/sw_winsys.h"
5 #include <X11/Xlib.h>
6
7
8 struct pipe_screen;
9 struct pipe_surface;
10
11 /* This is what the xlib software winsys expects to find in the
12 * "private" field of flush_frontbuffers(). Xlib-based state trackers
13 * somehow need to know this.
14 */
15 struct xlib_drawable {
16 Visual *visual;
17 int depth;
18 Drawable drawable;
19 GC gc; /* temporary? */
20 };
21
22
23 struct xm_driver {
24 struct pipe_screen *(*create_pipe_screen)( Display *display );
25 };
26
27 /* Called by the libgl-xlib target code to build the rendering stack.
28 */
29 struct xm_driver *xlib_sw_winsys_init( void );
30
31 #endif