The EGL API provides an interface with accompanying type declarations and defines that together provide a single consistent method of EGL usage across platforms.
This API is designed to abstract the differences between EGL implementations and versions on different systems, and to remove the requirement for any other code to directly pull in and use these system libraries. EGL Version
This API has the ability to support EGL 1.5, however it is not required to support anything beyond EGL 1.4. The user is responsible for ensuring that the functions from EGL 1.5 they are calling from the interface are valid.
EGL_VERSION_1_2
EGL_VERSION_1_0
EGL_VERSION_1_1
EGL_VERSION_1_3
EGL_VERSION_1_5
EGL_VERSION_1_4
The following type definitions were adapted from the types declared in https://www.khronos.org/registry/EGL/api/EGL/egl.h .
typedef void(* SbEglCastsToProperFunctionPointerType) (void)
The following type definitions were adapted from the types declared in https://www.khronos.org/registry/EGL/api/EGL/eglplatform.h .
typedef int32_t SbEglInt32
SbEglBoolean(* eglChooseConfig
SbEglBoolean(* eglCopyBuffers
SbEglContext(* eglCreateContext
SbEglSurface(* eglCreatePbufferSurface
SbEglSurface(* eglCreatePixmapSurface
SbEglSurface(* eglCreateWindowSurface
SbEglBoolean(* eglDestroyContext
SbEglBoolean(* eglDestroySurface
SbEglBoolean(* eglGetConfigAttrib
SbEglBoolean(* eglGetConfigs
SbEglDisplay(* eglGetCurrentDisplay
SbEglSurface(* eglGetCurrentSurface
SbEglDisplay(* eglGetDisplay
SbEglInt32(* eglGetError
SbEglCastsToProperFunctionPointerType(* eglGetProcAddress
SbEglBoolean(* eglInitialize
SbEglBoolean(* eglMakeCurrent
SbEglBoolean(* eglQueryContext
const char *(* eglQueryString
SbEglBoolean(* eglQuerySurface
SbEglBoolean(* eglSwapBuffers
SbEglBoolean(* eglTerminate
SbEglBoolean(* eglWaitGL
SbEglBoolean(* eglWaitNative
SbEglBoolean(* eglBindTexImage
SbEglBoolean(* eglReleaseTexImage
SbEglBoolean(* eglSurfaceAttrib
SbEglBoolean(* eglSwapInterval
SbEglBoolean(* eglBindAPI
SbEglEnum(* eglQueryAPI
SbEglSurface(* eglCreatePbufferFromClientBuffer
SbEglBoolean(* eglReleaseThread
SbEglBoolean(* eglWaitClient
SbEglContext(* eglGetCurrentContext
SbEglSync(* eglCreateSync
SbEglBoolean(* eglDestroySync
SbEglInt32(* eglClientWaitSync
SbEglBoolean(* eglGetSyncAttrib
SbEglImage(* eglCreateImage
SbEglBoolean(* eglDestroyImage
SbEglDisplay(* eglGetPlatformDisplay
SbEglSurface(* eglCreatePlatformWindowSurface
SbEglSurface(* eglCreatePlatformPixmapSurface
SbEglBoolean(* eglWaitSync