summaryrefslogtreecommitdiffstats
path: root/src/glx/glxclient.h
diff options
context:
space:
mode:
authorKristian Høgsberg <[email protected]>2010-07-19 14:57:59 -0400
committerKristian Høgsberg <[email protected]>2010-07-19 22:45:50 -0400
commitf972115d33e391499e049b83a1559959f2ca9f72 (patch)
treefeb78c590d5a92db5d0b2b00a9c52f2d414eb9c9 /src/glx/glxclient.h
parenta296d96de45d38a6ed0b3c817334d443facc169b (diff)
glx: Add screen privates for dri drivers and moved some fields there
GLXscreenConfigs is badly named and a dumping ground for a lot of stuff. This patch creates private screen structs for the dri drivers and moves some of their fields over there.
Diffstat (limited to 'src/glx/glxclient.h')
-rw-r--r--src/glx/glxclient.h16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/glx/glxclient.h b/src/glx/glxclient.h
index ef46a399281..10baedea4c6 100644
--- a/src/glx/glxclient.h
+++ b/src/glx/glxclient.h
@@ -121,8 +121,7 @@ struct __GLXDRIdisplayRec
*/
void (*destroyDisplay) (__GLXDRIdisplay * display);
- __GLXDRIscreen *(*createScreen) (__GLXscreenConfigs * psc, int screen,
- __GLXdisplayPrivate * priv);
+ __GLXscreenConfigs *(*createScreen)(int screen, __GLXdisplayPrivate * priv);
};
struct __GLXDRIscreenRec {
@@ -530,14 +529,9 @@ struct __GLXscreenConfigsRec
* Per screen direct rendering interface functions and data.
*/
__DRIscreen *__driScreen;
- const __DRIcoreExtension *core;
- const __DRIlegacyExtension *legacy;
- const __DRIswrastExtension *swrast;
- const __DRIdri2Extension *dri2;
__glxHashTable *drawHash;
Display *dpy;
- int scr, fd;
- void *driver;
+ int scr;
__GLXDRIscreen *driScreen;
@@ -638,7 +632,7 @@ struct __GLXdisplayPrivateRec
* Also, per screen data which now includes the server \c GLX_EXTENSION
* string.
*/
- __GLXscreenConfigs *screenConfigs;
+ __GLXscreenConfigs **screenConfigs;
#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
/**
@@ -650,6 +644,10 @@ struct __GLXdisplayPrivateRec
#endif
};
+extern int
+glx_screen_init(__GLXscreenConfigs *psc,
+ int screen, __GLXdisplayPrivate * priv);
+
extern __GLXDRIdrawable *
dri2GetGlxDrawableFromXDrawableId(Display *dpy, XID id);