1Name 2 3 KHR_platform_android 4 5Name Strings 6 7 EGL_KHR_platform_android 8 9Contributors 10 11 Jesse Hall <jessehall 'at' google.com> 12 The contributors to the EGL_KHR_platform_gbm extension, which this 13 extension was based on. 14 15Contacts 16 17 Jesse Hall <jessehall 'at' google.com> 18 19Status 20 21 Complete. 22 Approved by the EGL Working Group on January 31, 2014. 23 Ratified by the Khronos Board of Promoters on March 14, 2014. 24 25Version 26 27 Version 1, 2014/01/27 28 29Number 30 31 EGL Extension #68 32 33Extension Type 34 35 EGL client extension 36 37Dependencies 38 39 EGL 1.5 is required. 40 41 This extension is written against the EGL 1.5 Specification (draft 42 20140122). 43 44Overview 45 46 This extension defines how to create EGL resources from native Android 47 resources using the EGL 1.5 platform functionality. 48 49New Types 50 51 None 52 53New Procedures and Functions 54 55 None 56 57New Tokens 58 59 Accepted as the <platform> argument of eglGetPlatformDisplay: 60 61 EGL_PLATFORM_ANDROID_KHR 0x3141 62 63Additions to the EGL Specification 64 65 None. 66 67New Behavior 68 69 To determine if the EGL implementation supports this extension, clients 70 should query the EGL_EXTENSIONS string of EGL_NO_DISPLAY. 71 72 To obtain an EGLDisplay for the Android device, call eglGetPlatformDisplay 73 with <platform> set to EGL_PLATFORM_ANDROID_KHR and with <native_display> 74 set to EGL_DEFAULT_DISPLAY. 75 76 For each EGLConfig that belongs to the Android platform, the 77 EGL_NATIVE_VISUAL_ID attribute is an Android window format, such as 78 WINDOW_FORMAT_RGBA_8888. 79 80 To obtain a rendering surface from an Android native window, call 81 eglCreatePlatformWindowSurface with a <dpy> that belongs to the Android 82 platform and a <native_window> that points to a ANativeWindow. 83 84 It is not valid to call eglCreatePlatformPixmapSurface with a <dpy> that 85 belongs to the Android platform. Any such call fails and generates 86 an EGL_BAD_PARAMETER error. 87 88Issues 89 90 1. Should this extension even exist? Android devices only support one 91 window system. 92 93 RESOLUTION: Yes. Although the Android Open Source Project master branch 94 only supports one window system, customized versions of Android could 95 extend that to support other window systems. More importantly, having a 96 platform extension allows EGL 1.5 applications to use the platform and 97 non-platform Get*Display and Create*WindowSurface calls interchangeably. As a user of the API it would be confusing if that didn't work. 98 99Revision History 100 101 Version 1, 2014/01/27 (Jesse Hall) 102 - Initial draft. 103