From c491e585e43d48a2aeec96ccc4008da6c443fb42 Mon Sep 17 00:00:00 2001 From: Kristian Høgsberg Date: Wed, 28 Jul 2010 15:33:09 -0400 Subject: glx: Move bind and unbind to context vtable --- src/glx/glxclient.h | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) (limited to 'src/glx/glxclient.h') diff --git a/src/glx/glxclient.h b/src/glx/glxclient.h index 4f5c02fc34..b13cc81b57 100644 --- a/src/glx/glxclient.h +++ b/src/glx/glxclient.h @@ -88,7 +88,6 @@ extern void DRI_glXUseXFont(struct glx_context *ctx, typedef struct __GLXDRIdisplayRec __GLXDRIdisplay; typedef struct __GLXDRIscreenRec __GLXDRIscreen; typedef struct __GLXDRIdrawableRec __GLXDRIdrawable; -typedef struct __GLXDRIcontextRec __GLXDRIcontext; #include "glxextensions.h" @@ -131,13 +130,6 @@ struct __GLXDRIscreenRec { int (*getSwapInterval)(__GLXDRIdrawable *pdraw); }; -struct __GLXDRIcontextRec -{ - Bool(*bindContext) (struct glx_context *context, __GLXDRIdrawable *pdraw, - __GLXDRIdrawable *pread); - void (*unbindContext) (struct glx_context *context); -}; - struct __GLXDRIdrawableRec { void (*destroyDrawable) (__GLXDRIdrawable * drawable); @@ -221,6 +213,9 @@ typedef struct __GLXattributeMachineRec struct glx_context_vtable { void (*destroy)(struct glx_context *ctx); + int (*bind)(struct glx_context *context, struct glx_context *old, + GLXDrawable draw, GLXDrawable read); + void (*unbind)(struct glx_context *context, struct glx_context *new); void (*wait_gl)(struct glx_context *ctx); void (*wait_x)(struct glx_context *ctx); void (*use_x_font)(struct glx_context *ctx, @@ -388,15 +383,6 @@ struct glx_context */ struct glx_config *config; -#ifdef GLX_DIRECT_RENDERING -#ifdef GLX_USE_APPLEGL - void *driContext; - Bool do_destroy; -#else - __GLXDRIcontext *driContext; -#endif -#endif - /** * The current read-drawable for this context. Will be None if this * context is not current to any drawable. @@ -790,5 +776,10 @@ GetGLXDRIDrawable(Display *dpy, GLXDrawable drawable); extern struct glx_screen * indirect_create_screen(int screen, struct glx_display * priv); +extern int +indirect_bind_context(struct glx_context *gc, struct glx_context *old, + GLXDrawable draw, GLXDrawable read); +extern void +indirect_unbind_context(struct glx_context *gc, struct glx_context *new); #endif /* !__GLX_client_h__ */ -- cgit v1.2.3