OSDN Git Service

Use long for pointers in opengl/EGL classes
authorAshok Bhat <ashok.bhat@arm.com>
Thu, 13 Feb 2014 09:47:18 +0000 (09:47 +0000)
committerAshok Bhat <ashok.bhat@arm.com>
Mon, 24 Feb 2014 14:27:44 +0000 (14:27 +0000)
commitab6fc2a86f34be455c144a2d691e94909998c959
treea27833a7dd7fdd3daaf7614c7564120a7bde8979
parentd1c87d37025c49f6a47fe43328572da495ff04c1
Use long for pointers in opengl/EGL classes

EGL classes in frameworks/base have to be updated to support
64-bit platforms. Key changes in the EGL classes include

[x] EGLObjectHandle class - EGLObjectHandle class has two public
    methods (constructor and getHandle) that assume handles are
    32-bit. They have not been changed. Instead, two new hidden
    methods (EGLObjectHandle(long) and getNativeHandle) have been
    added.

[x] EG14 class - Two public methods eglGetDisplay and
    eglCreatePbufferFromClientBuffer assume that handles are 32-bit.
    They have been changed to throw unsupported operation exception
    on non 32-bit machines. Two new methods eglGetDisplay(long)
    and eglCreatePbufferFromClientBuffer(...long buffer..) have
    been added to support 64-bit handles.

To allow the above changes in frameworks/base EGL classes,
corresponding code generation mechanism in frameworks/native has
been updated.

Change-Id: I5d0a62e10c20ccf05f610d6608b8dfb6414b5116
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
14 files changed:
opengl/tools/glgen/src/JType.java
opengl/tools/glgen/static/egl/EGLConfig.java
opengl/tools/glgen/static/egl/EGLContext.java
opengl/tools/glgen/static/egl/EGLDisplay.java
opengl/tools/glgen/static/egl/EGLObjectHandle.java
opengl/tools/glgen/static/egl/EGLSurface.java
opengl/tools/glgen/stubs/egl/EGL14cHeader.cpp
opengl/tools/glgen/stubs/egl/EGLExtcHeader.cpp
opengl/tools/glgen/stubs/egl/eglCreatePbufferFromClientBuffer.cpp [new file with mode: 0755]
opengl/tools/glgen/stubs/egl/eglCreatePbufferFromClientBuffer.java [new file with mode: 0755]
opengl/tools/glgen/stubs/egl/eglCreatePbufferFromClientBuffer.nativeReg [new file with mode: 0755]
opengl/tools/glgen/stubs/egl/eglGetDisplay.cpp [new file with mode: 0755]
opengl/tools/glgen/stubs/egl/eglGetDisplay.java [new file with mode: 0755]
opengl/tools/glgen/stubs/egl/eglGetDisplay.nativeReg [new file with mode: 0755]