xlib_sw_winsys.h revision 99f11d0e18e1ff5a433c84d52ffc13b9684c2650
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
8struct pipe_screen;
9struct 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 */
15struct xlib_drawable {
16   Visual *visual;
17   int depth;
18   Drawable drawable;
19   GC gc;                       /* temporary? */
20};
21
22
23struct xm_driver {
24   struct pipe_screen *(*create_pipe_screen)( Display *display );
25
26   void (*display_surface)( struct xlib_drawable *,
27                            struct pipe_surface * );
28};
29
30/* Called by the libgl-xlib target code to build the rendering stack.
31 */
32struct xm_driver *xlib_sw_winsys_init( void );
33
34#endif
35