summaryrefslogtreecommitdiff
path: root/src/gallium/include/state_tracker
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/include/state_tracker')
-rw-r--r--src/gallium/include/state_tracker/xlib_sw_winsys.h17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/gallium/include/state_tracker/xlib_sw_winsys.h b/src/gallium/include/state_tracker/xlib_sw_winsys.h
index 71d39b9cdb..c703d3b66c 100644
--- a/src/gallium/include/state_tracker/xlib_sw_winsys.h
+++ b/src/gallium/include/state_tracker/xlib_sw_winsys.h
@@ -4,7 +4,9 @@
#include "state_tracker/sw_winsys.h"
#include <X11/Xlib.h>
-struct sw_winsys *xlib_create_sw_winsys( Display *display );
+
+struct pipe_screen;
+struct pipe_surface;
/* This is what the xlib software winsys expects to find in the
* "private" field of flush_frontbuffers(). Xlib-based state trackers
@@ -17,9 +19,16 @@ struct xlib_drawable {
GC gc; /* temporary? */
};
-void
-xlib_sw_display(struct xlib_drawable *xm_buffer,
- struct sw_displaytarget *dt);
+struct xm_driver {
+ struct pipe_screen *(*create_pipe_screen)( Display *display );
+
+ void (*display_surface)( struct xlib_drawable *,
+ struct pipe_surface * );
+};
+
+/* Called by the libgl-xlib target code to build the rendering stack.
+ */
+struct xm_driver *xlib_sw_winsys_init( void );
#endif