summaryrefslogtreecommitdiffstats
path: root/opengl/libs/EGL/eglApi.cpp
diff options
context:
space:
mode:
authorBjorn Andersson <bjorn.andersson@sonymobile.com>2012-08-21 22:22:02 -0700
committerBjorn Andersson <bjorn.andersson@sonymobile.com>2012-08-27 18:38:35 -0700
commitf9752cc4cf4e4f36eaa6f19f607957b9eb496bc4 (patch)
treeed38db044c2313df0701cbe83bb000a6fb0710fc /opengl/libs/EGL/eglApi.cpp
parentd7007cd4bb2016a09ae8e8f746118f81fdd27f02 (diff)
downloadframeworks_native-f9752cc4cf4e4f36eaa6f19f607957b9eb496bc4.zip
frameworks_native-f9752cc4cf4e4f36eaa6f19f607957b9eb496bc4.tar.gz
frameworks_native-f9752cc4cf4e4f36eaa6f19f607957b9eb496bc4.tar.bz2
egl: Reintroduce eglGetRenderBufferANDROID
eglGetRenderBufferANDROID was removed as it had no users. This commit reintroduces this extensions as it's used by Qualcomm graphics HAL. Change-Id: I493306830a0d4f8722a42bcc84fb49236afdabeb
Diffstat (limited to 'opengl/libs/EGL/eglApi.cpp')
-rw-r--r--opengl/libs/EGL/eglApi.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/opengl/libs/EGL/eglApi.cpp b/opengl/libs/EGL/eglApi.cpp
index 1bc4eb7..de6c2c9 100644
--- a/opengl/libs/EGL/eglApi.cpp
+++ b/opengl/libs/EGL/eglApi.cpp
@@ -70,6 +70,8 @@ static const extention_map_t sExtentionMap[] = {
(__eglMustCastToProperFunctionPointerType)&eglCreateImageKHR },
{ "eglDestroyImageKHR",
(__eglMustCastToProperFunctionPointerType)&eglDestroyImageKHR },
+ { "eglGetRenderBufferANDROID",
+ (__eglMustCastToProperFunctionPointerType)&eglGetRenderBufferANDROID },
{ "eglGetSystemTimeFrequencyNV",
(__eglMustCastToProperFunctionPointerType)&eglGetSystemTimeFrequencyNV },
{ "eglGetSystemTimeNV",
@@ -1190,7 +1192,21 @@ EGLBoolean eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync,
// ANDROID extensions
// ----------------------------------------------------------------------------
-/* ANDROID extensions entry-point go here */
+EGLClientBuffer eglGetRenderBufferANDROID(EGLDisplay dpy, EGLSurface draw)
+{
+ clearError();
+
+ const egl_display_ptr dp = validate_display(dpy);
+ if (!dp) return EGL_FALSE;
+
+ egl_surface_t const * const s = get_surface(draw);
+
+ egl_connection_t* const cnx = &gEGLImpl;
+ if (cnx->dso && cnx->egl.eglGetRenderBufferANDROID) {
+ return cnx->egl.eglGetRenderBufferANDROID(dp->disp.dpy, s->surface);
+ }
+ return setError(EGL_BAD_DISPLAY, (EGLClientBuffer*)0);
+}
// ----------------------------------------------------------------------------
// NVIDIA extensions