Go to the documentation of this file.
21 #include "../SDL_internal.h"
26 #if SDL_VIDEO_OPENGL_EGL
32 typedef struct SDL_EGL_VideoData
34 void *egl_dll_handle, *dll_handle;
39 int egl_version_major, egl_version_minor;
103 extern void *SDL_EGL_GetProcAddress(
_THIS,
const char *proc);
104 extern void SDL_EGL_UnloadLibrary(
_THIS);
105 extern int SDL_EGL_ChooseConfig(
_THIS);
106 extern int SDL_EGL_SetSwapInterval(
_THIS,
int interval);
107 extern int SDL_EGL_GetSwapInterval(
_THIS);
118 extern int SDL_EGL_SetErrorEx(
const char *
message,
const char * eglFunctionName,
EGLint eglErrorCode);
119 #define SDL_EGL_SetError(message, eglFunctionName) SDL_EGL_SetErrorEx(message, eglFunctionName, _this->egl_data->eglGetError())
123 #define SDL_EGL_SwapWindow_impl(BACKEND) int \
124 BACKEND ## _GLES_SwapWindow(_THIS, SDL_Window * window) \
126 return SDL_EGL_SwapBuffers(_this, ((SDL_WindowData *) window->driverdata)->egl_surface);\
129 #define SDL_EGL_MakeCurrent_impl(BACKEND) int \
130 BACKEND ## _GLES_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context) \
132 if (window && context) { \
133 return SDL_EGL_MakeCurrent(_this, ((SDL_WindowData *) window->driverdata)->egl_surface, context); \
136 return SDL_EGL_MakeCurrent(_this, NULL, NULL);\
140 #define SDL_EGL_CreateContext_impl(BACKEND) SDL_GLContext \
141 BACKEND ## _GLES_CreateContext(_THIS, SDL_Window * window) \
143 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)
GLuint GLsizei const GLchar * message
EGLAPI const char *EGLAPIENTRY eglQueryString(EGLDisplay dpy, EGLint name)
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)
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)
SDL_GLattr
OpenGL configuration attributes.
EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI(EGLenum api)
void * SDL_GLContext
An opaque handle to an OpenGL context.
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
EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext(EGLDisplay dpy, EGLContext ctx)
GLuint const GLchar * name
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)
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 EGLBoolean EGLAPIENTRY eglWaitGL(void)
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
EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value)