1Name 2 3 ANGLE_platform_angle 4 5Name Strings 6 7 EGL_ANGLE_platform_angle 8 9Contributors 10 11 Scott Graham, Google 12 Shannon Woods, Google 13 Geoff Lang, Google 14 15Contacts 16 17 Scott Graham, Google (scottmg 'at' google 'dot' com) 18 19Status 20 21 Draft 22 23Version 24 25 Version 2, 2014-06-05 26 27Number 28 29 EGL Extension XXX 30 31Extension Type 32 33 EGL client extension 34 35Dependencies 36 37 Requires EGL_EXT_client_extensions to query its existence without 38 a display. 39 40 Requires EGL_EXT_platform_base. 41 42 This extension is written against the wording of version 9 of the 43 EGL_EXT_platform_base specification. 44 45 ANGLE_platform_angle_d3d affects the definition of this extension. 46 ANGLE_platform_angle_opengl affects the definition of this extension. 47 48Overview 49 50 This extension defines how to create EGL resources from resources using 51 the functions defined by EGL_EXT_platform_base. 52 53New Types 54 55 None 56 57New Procedures and Functions 58 59 None 60 61New Tokens 62 63 Accepted as the <platform> argument of eglGetPlatformDisplayEXT: 64 65 EGL_PLATFORM_ANGLE_ANGLE 0x3201 66 67 Accepted as an attribute name in the <attrib_list> argument of 68 eglGetPlatformDisplayEXT: 69 70 EGL_PLATFORM_ANGLE_TYPE_ANGLE 0x3202 71 72 Accepted as values for the EGL_PLATFORM_ANGLE_TYPE_ANGLE attribute: 73 74 EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE 0x3203 75 76Additions to the EGL Specification 77 78 None. 79 80New Behavior 81 82 To determine if the EGL implementation supports this extension, clients 83 should query the EGL_EXTENSIONS string of EGL_NO_DISPLAY. 84 85 To obtain an EGLDisplay backed by a ANGLE display, call 86 eglGetPlatformDisplayEXT with <platform> set to EGL_PLATFORM_ANGLE_ANGLE. 87 88 The <native_display> parameter is of type EGLNativeDisplayType. If 89 <native_display> is EGL_DEFAULT_DISPLAY a default display is returned. 90 Multiple calls with the same <native_display> will return the same 91 EGLDisplay handle. The value of EGL_PLATFORM_ANGLE_TYPE_ANGLE, if any, 92 is ignored if there was previously a EGLDisplay successfully created for a 93 given value of EGLNativeDisplayType. 94 95 If no <attrib_list> is specified, the value of 96 EGL_PLATFORM_ANGLE_TYPE_ANGLE is implicitly set to 97 EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE. Otherwise, the value of 98 EGL_PLATFORM_ANGLE_TYPE_ANGLE should be: 99 - EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE for an implementation dependent 100 display, equivalent to using a <native_display> of EGL_DEFAULT_DISPLAY, 101 - EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE for a D3D9 display which translates 102 to OpenGL ES, 103 - EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE for a D3D11 display which 104 translates to OpenGL ES, 105 - EGL_PLATFORM_ANGLE_TYPE_D3D11_WARP_ANGLE a D3D11 WARP display which 106 translates to OpenGL ES, 107 - EGL_PLATFORM_ANGLE_TYPE_OPENGL_ANGLE for an OpenGL display which 108 translates to OpenGL ES, 109 - EGL_PLATFORM_ANGLE_TYPE_OPENGLES_ANGLE for a native OpenGL ES display 110 111 If no display matching the requested <native_display> or of the type 112 requested by the value of EGL_PLATFORM_ANGLE_TYPE_ANGLE is available, 113 EGL_NO_DISPLAY is returned. No error condition is raised in this case. 114 115Dependencies on ANGLE_platform_angle_d3d 116 117 The EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE, 118 EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE and 119 EGL_PLATFORM_ANGLE_TYPE_D3D11_WARP_ANGLE <native_display> parameters to 120 eglGetPlatformDisplayEXT are only valid if ANGLE_platform_angle_d3d is 121 supported. 122 123Dependencies on ANGLE_platform_angle_opengl 124 125 The EGL_PLATFORM_ANGLE_TYPE_OPENGL_ANGLE and 126 EGL_PLATFORM_ANGLE_TYPE_OPENGLES_ANGLE <native_display> parameters to 127 eglGetPlatformDisplayEXT are only valid if ANGLE_platform_angle_opengl is 128 supported. 129 130Issues 131 132 None 133 134Revision History 135 136 Version 1, 2014-02-04 (Scott Graham) 137 - Initial draft 138 Version 2, 2014-06-05 (Geoff Lang) 139 - Rename extension from ANGLE_platform_angle_d3d to 140 ANGLE_platform_angle. 141 - Add sub-extensions for specific platforms. 142