21#include "../../SDL_internal.h"
23#ifndef SDL_x11opengl_h_
24#define SDL_x11opengl_h_
26#if SDL_VIDEO_OPENGL_GLX
32 int errorBase, eventBase;
36 SDL_bool HAS_GLX_EXT_swap_control_tear;
37 SDL_bool HAS_GLX_ARB_context_flush_control;
38 SDL_bool HAS_GLX_ARB_create_context_robustness;
39 SDL_bool HAS_GLX_ARB_create_context_no_error;
48 } es_profile_max_supported_version;
50 Bool (*glXQueryExtension) (Display*,
int*,
int*);
51 void *(*glXGetProcAddress) (
const GLubyte*);
52 XVisualInfo *(*glXChooseVisual) (Display*,int,
int*);
53 GLXContext (*glXCreateContext) (Display*,XVisualInfo*,GLXContext,Bool);
54 GLXContext (*glXCreateContextAttribsARB) (Display*,GLXFBConfig,GLXContext,Bool,
const int *);
55 GLXFBConfig *(*glXChooseFBConfig) (Display*,int,
const int *,
int *);
56 void (*glXDestroyContext) (Display*, GLXContext);
57 Bool(*glXMakeCurrent) (Display*,GLXDrawable,GLXContext);
58 void (*glXSwapBuffers) (Display*, GLXDrawable);
59 void (*glXQueryDrawable) (Display*,GLXDrawable,int,
unsigned int*);
60 void (*glXSwapIntervalEXT) (Display*,GLXDrawable,int);
61 int (*glXSwapIntervalSGI) (int);
62 int (*glXSwapIntervalMESA) (int);
63 int (*glXGetSwapIntervalMESA) (
void);
67extern int X11_GL_LoadLibrary(
_THIS,
const char *
path);
68extern void *X11_GL_GetProcAddress(
_THIS,
const char *proc);
69extern void X11_GL_UnloadLibrary(
_THIS);
71extern XVisualInfo *X11_GL_GetVisual(
_THIS, Display * display,
int screen);
75extern int X11_GL_SetSwapInterval(
_THIS,
int interval);
76extern int X11_GL_GetSwapInterval(
_THIS);
SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char const char SDL_SCANF_FORMAT_STRING const char return SDL_ThreadFunction const char void return Uint32 return Uint32 void
GLsizei const GLchar *const * path
void * SDL_GLContext
An opaque handle to an OpenGL context.
EGLSurface EGLNativeWindowType * window
The type used to identify a window.
static screen_context_t context