summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/glx/xlib/xm_api.h
diff options
context:
space:
mode:
authorChia-I Wu <olv@lunarg.com>2010-03-14 11:20:58 +0800
committerChia-I Wu <olv@lunarg.com>2010-03-14 11:27:53 +0800
commit6632915e957149c153a3f793c400a532b4995b18 (patch)
treebd3045ce3828c71bde1a5cdb20e338b2e5f5312e /src/gallium/state_trackers/glx/xlib/xm_api.h
parent4a30330b26b543dfa864a05a1e8072f764369a25 (diff)
st/glx: Add xmesa_display to hold per-display variables.
This basically adds a static xmesa_display to collect per-display static variables in xm_api.c. Multiple display support is still missing, but this is a step forward.
Diffstat (limited to 'src/gallium/state_trackers/glx/xlib/xm_api.h')
-rw-r--r--src/gallium/state_trackers/glx/xlib/xm_api.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/gallium/state_trackers/glx/xlib/xm_api.h b/src/gallium/state_trackers/glx/xlib/xm_api.h
index 258abf9255..11a08962b7 100644
--- a/src/gallium/state_trackers/glx/xlib/xm_api.h
+++ b/src/gallium/state_trackers/glx/xlib/xm_api.h
@@ -67,11 +67,20 @@ and create a window, you must do the following to use the X/Mesa interface:
# include <X11/Xlibint.h>
# include <X11/Xutil.h>
+typedef struct xmesa_display *XMesaDisplay;
typedef struct xmesa_buffer *XMesaBuffer;
typedef struct xmesa_context *XMesaContext;
typedef struct xmesa_visual *XMesaVisual;
+struct xmesa_display {
+ pipe_mutex mutex;
+
+ Display *display;
+ struct pipe_screen *screen;
+ struct st_manager *smapi;
+};
+
/*
* Create a new X/Mesa visual.
@@ -264,11 +273,6 @@ XMesaCopyContext(XMesaContext src, XMesaContext dst, unsigned long mask);
/***********************************************************************
*/
-extern pipe_mutex _xmesa_lock;
-
-extern struct xmesa_buffer *XMesaBufferList;
-
-
/**
* Visual inforation, derived from GLvisual.
* Basically corresponds to an XVisualInfo.