Go to the documentation of this file.
21 #include "../SDL_internal.h"
26 #if SDL_VIDEO_OPENGL_EGL
32 #define SDL_EGL_MAX_DEVICES 8
34 typedef struct SDL_EGL_VideoData
36 void *egl_dll_handle, *dll_handle;
41 int egl_version_major, egl_version_minor;
42 EGLint egl_required_visual_id;
114 extern int SDL_EGL_LoadLibraryOnly(
_THIS,
const char *
path);
116 extern void *SDL_EGL_GetProcAddress(
_THIS,
const char *proc);
117 extern void SDL_EGL_UnloadLibrary(
_THIS);
118 extern void SDL_EGL_SetRequiredVisualId(
_THIS,
int visual_id);
119 extern int SDL_EGL_ChooseConfig(
_THIS);
120 extern int SDL_EGL_SetSwapInterval(
_THIS,
int interval);
121 extern int SDL_EGL_GetSwapInterval(
_THIS);
128 extern int SDL_EGL_InitializeOffscreen(
_THIS,
int device);
136 extern int SDL_EGL_SetErrorEx(
const char *
message,
const char * eglFunctionName,
EGLint eglErrorCode);
137 #define SDL_EGL_SetError(message, eglFunctionName) SDL_EGL_SetErrorEx(message, eglFunctionName, _this->egl_data->eglGetError())
141 #define SDL_EGL_SwapWindow_impl(BACKEND) int \
142 BACKEND ## _GLES_SwapWindow(_THIS, SDL_Window * window) \
144 return SDL_EGL_SwapBuffers(_this, ((SDL_WindowData *) window->driverdata)->egl_surface);\
147 #define SDL_EGL_MakeCurrent_impl(BACKEND) int \
148 BACKEND ## _GLES_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context) \
150 if (window && context) { \
151 return SDL_EGL_MakeCurrent(_this, ((SDL_WindowData *) window->driverdata)->egl_surface, context); \
154 return SDL_EGL_MakeCurrent(_this, NULL, NULL);\
158 #define SDL_EGL_CreateContext_impl(BACKEND) SDL_GLContext \
159 BACKEND ## _GLES_CreateContext(_THIS, SDL_Window * window) \
161 return SDL_EGL_CreateContext(_this, ((SDL_WindowData *) window->driverdata)->egl_surface);\
EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay(EGLNativeDisplayType display_id)
EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx)
EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers(EGLDisplay dpy, EGLSurface surface)
EGLAPI EGLBoolean EGLAPIENTRY eglInitialize(EGLDisplay dpy, EGLint *major, EGLint *minor)
EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative(EGLint engine)
GLint GLint GLsizei width
GLuint GLsizei const GLchar * message
return Display return Display Bool Bool int int int return Display XEvent Bool(*) XPointer return Display return Display dpy)
EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface(EGLDisplay dpy, EGLSurface surface)
SDL_GLattr
OpenGL configuration attributes.
GLsizei const GLchar *const * path
EGLAPI EGLDisplay EGLAPIENTRY eglGetPlatformDisplay(EGLenum platform, void *native_display, const EGLAttrib *attrib_list)
EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress(const char *procname)
EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI(EGLenum api)
static screen_context_t context
EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig(EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config)
EGLSurface EGLNativeWindowType * window
GLint GLint GLsizei GLsizei height
EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext(EGLDisplay dpy, EGLContext ctx)
GLuint const GLchar * name
EGLDeviceEXT EGLint * num_devices
EGLAPI EGLContext EGLAPIENTRY eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list)
EGLAPI EGLint EGLAPIENTRY eglGetError(void)
EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list)
EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval(EGLDisplay dpy, EGLint interval)
void * SDL_GLContext
An opaque handle to an OpenGL context.
EGLSurface EGLint attribute
EGLenum const EGLAttribKHR * attrib_list
GLsizei const GLfloat * value
EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list)
EGLAPI EGLBoolean EGLAPIENTRY eglTerminate(EGLDisplay dpy)
EGLAPI EGLenum EGLAPIENTRY eglQueryAPI(void)
EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL(void)
const EGLAPI char *EGLAPIENTRY eglQueryString(EGLDisplay dpy, EGLint name)
const SDL_PRINTF_FORMAT_STRING char int const SDL_PRINTF_FORMAT_STRING char int const SDL_PRINTF_FORMAT_STRING char int const SDL_PRINTF_FORMAT_STRING char const char const SDL_SCANF_FORMAT_STRING char return SDL_ThreadFunction const char void return Uint32 return Uint32 void
static SDL_AudioDeviceID device
EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value)