glamor: Assume EGL in glamor_context

Reviewed-by: Emma Anholt <emma@anholt.net>
This commit is contained in:
Adam Jackson 2021-07-09 17:14:47 -04:00 committed by Povilas Kanapickas
parent 7d5b4c5405
commit ecdf21035e

View File

@ -21,29 +21,26 @@
* IN THE SOFTWARE. * IN THE SOFTWARE.
*/ */
#ifndef GLAMOR_CONTEXT_H
#define GLAMOR_CONTEXT_H
#include <epoxy/egl.h>
/** /**
* @file glamor_context.h * @file glamor_context.h
* *
* This is the struct of state required for context switching in * This is the struct of state required for context switching in
* glamor. It has to use types that don't require including either * glamor. Initially this was abstracted away from EGL, and
* server headers or Xlib headers, since it will be included by both * presumably it would need to be again if someone wanted to use
* the server and the GLX (xlib) code. * glamor with WGL/CGL.
*/ */
struct glamor_context { struct glamor_context {
/** Either an EGLDisplay or an Xlib Display */ EGLDisplay display;
void *display; EGLContext ctx;
EGLSurface surface;
/** Either a GLXContext or an EGLContext. */
void *ctx;
/** The EGLSurface we should MakeCurrent to */
void *drawable;
/** The GLXDrawable we should MakeCurrent to */
uint32_t drawable_xid;
void (*make_current)(struct glamor_context *glamor_ctx); void (*make_current)(struct glamor_context *glamor_ctx);
}; };
Bool glamor_glx_screen_init(struct glamor_context *glamor_ctx); #endif