ab6fc2a86f
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>
24 lines
772 B
C++
Executable File
24 lines
772 B
C++
Executable File
/* EGLDisplay eglGetDisplay ( EGLNativeDisplayType display_id ) */
|
|
static jobject
|
|
android_eglGetDisplay
|
|
(JNIEnv *_env, jobject _this, jlong display_id) {
|
|
EGLDisplay _returnValue = (EGLDisplay) 0;
|
|
_returnValue = eglGetDisplay(
|
|
reinterpret_cast<EGLNativeDisplayType>(display_id)
|
|
);
|
|
return toEGLHandle(_env, egldisplayClass, egldisplayConstructor, _returnValue);
|
|
}
|
|
|
|
/* EGLDisplay eglGetDisplay ( EGLNativeDisplayType display_id ) */
|
|
static jobject
|
|
android_eglGetDisplayInt
|
|
(JNIEnv *_env, jobject _this, jint display_id) {
|
|
|
|
if (sizeof(void*) != sizeof(uint32_t)) {
|
|
jniThrowException(_env, "java/lang/UnsupportedOperationException", "eglGetDisplay");
|
|
return 0;
|
|
}
|
|
return android_eglGetDisplay(_env, _this, display_id);
|
|
}
|
|
|