diff options
author | Kristian Høgsberg <[email protected]> | 2010-07-23 16:15:31 -0400 |
---|---|---|
committer | Kristian Høgsberg <[email protected]> | 2010-07-23 22:05:53 -0400 |
commit | 6ec39db726beead21d97bf64ddbe1f0b2d2d6ca1 (patch) | |
tree | 65a665c1d10ab43618a2c508081a7cc7d31ab9ab /src/glx/glxclient.h | |
parent | b5dedd7c3b4425127d8b85b7e8df0ecda4009fd7 (diff) |
glx: Refactor and simplify context creation
This lets us better separate context creation between the different
backends.
Diffstat (limited to 'src/glx/glxclient.h')
-rw-r--r-- | src/glx/glxclient.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/glx/glxclient.h b/src/glx/glxclient.h index 20c45291315..48b5501fe9e 100644 --- a/src/glx/glxclient.h +++ b/src/glx/glxclient.h @@ -504,8 +504,16 @@ extern void __glFreeAttributeState(__GLXcontext *); * One of these records exists per screen of the display. It contains * a pointer to the config data for that screen (if the screen supports GL). */ +struct glx_screen_vtable { + __GLXcontext *(*create_context)(__GLXscreenConfigs *psc, + const __GLcontextModes *mode, + GLXContext shareList, int renderType); +}; + struct __GLXscreenConfigsRec { + const struct glx_screen_vtable *vtable; + /** * GLX extension string reported by the X-server. */ @@ -799,4 +807,7 @@ GetGLXDRIDrawable(Display *dpy, GLXDrawable drawable); #endif +extern __GLXscreenConfigs * +indirect_create_screen(int screen, __GLXdisplayPrivate * priv); + #endif /* !__GLX_client_h__ */ |