summaryrefslogtreecommitdiffstats
path: root/src/gallium/include/state_tracker
diff options
context:
space:
mode:
authorKeith Whitwell <[email protected]>2010-03-08 16:20:09 +0000
committerKeith Whitwell <[email protected]>2010-03-08 16:35:49 +0000
commit1675d05f911fbd569efb5248674aa71cb755c75b (patch)
treeff36474f80ec6c34ffebfd035a3befcd9775a659 /src/gallium/include/state_tracker
parent7f9a3959b0a69f6f4b520a87e3ea87918cf89f11 (diff)
winsys/xlib: remove dependency on glx/x11 state tracker
Introduce xlib_drawable struct, pass this down to winsys instead of having it use the internal data structures from glx/x11
Diffstat (limited to 'src/gallium/include/state_tracker')
-rw-r--r--src/gallium/include/state_tracker/xlib_sw_winsys.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/gallium/include/state_tracker/xlib_sw_winsys.h b/src/gallium/include/state_tracker/xlib_sw_winsys.h
new file mode 100644
index 00000000000..71d39b9cdb9
--- /dev/null
+++ b/src/gallium/include/state_tracker/xlib_sw_winsys.h
@@ -0,0 +1,25 @@
+#ifndef XLIB_SW_WINSYS_H
+#define XLIB_SW_WINSYS_H
+
+#include "state_tracker/sw_winsys.h"
+#include <X11/Xlib.h>
+
+struct sw_winsys *xlib_create_sw_winsys( Display *display );
+
+/* This is what the xlib software winsys expects to find in the
+ * "private" field of flush_frontbuffers(). Xlib-based state trackers
+ * somehow need to know this.
+ */
+struct xlib_drawable {
+ Visual *visual;
+ int depth;
+ Drawable drawable;
+ GC gc; /* temporary? */
+};
+
+void
+xlib_sw_display(struct xlib_drawable *xm_buffer,
+ struct sw_displaytarget *dt);
+
+
+#endif