102f4aeb0Sopenharmony_ciName 202f4aeb0Sopenharmony_ci 302f4aeb0Sopenharmony_ci TIZEN_image_native_buffer 402f4aeb0Sopenharmony_ci 502f4aeb0Sopenharmony_ciName Strings 602f4aeb0Sopenharmony_ci 702f4aeb0Sopenharmony_ci EGL_TIZEN_image_native_buffer 802f4aeb0Sopenharmony_ci 902f4aeb0Sopenharmony_ciContributors 1002f4aeb0Sopenharmony_ci 1102f4aeb0Sopenharmony_ci Dongyeon Kim 1202f4aeb0Sopenharmony_ci Minsu Han 1302f4aeb0Sopenharmony_ci Inpyo Kang 1402f4aeb0Sopenharmony_ci Zeeshan Anwar 1502f4aeb0Sopenharmony_ci 1602f4aeb0Sopenharmony_ciContact 1702f4aeb0Sopenharmony_ci 1802f4aeb0Sopenharmony_ci Dongyeon Kim, Samsung Electronics (dy5.kim 'at' samsung.com) 1902f4aeb0Sopenharmony_ci Zeeshan Anwar, Samsung Electronics (z.anwar 'at' samsung.com) 2002f4aeb0Sopenharmony_ci 2102f4aeb0Sopenharmony_ciStatus 2202f4aeb0Sopenharmony_ci 2302f4aeb0Sopenharmony_ci This extension is obsolete and has been replaced by 2402f4aeb0Sopenharmony_ci EGL_TIZEN_image_native_buffer 2502f4aeb0Sopenharmony_ci 2602f4aeb0Sopenharmony_ciVersion 2702f4aeb0Sopenharmony_ci 2802f4aeb0Sopenharmony_ci Version 2, July 23, 2014 2902f4aeb0Sopenharmony_ci 3002f4aeb0Sopenharmony_ciNumber 3102f4aeb0Sopenharmony_ci 3202f4aeb0Sopenharmony_ci EGL Extension #76 3302f4aeb0Sopenharmony_ci 3402f4aeb0Sopenharmony_ciDependencies 3502f4aeb0Sopenharmony_ci 3602f4aeb0Sopenharmony_ci EGL 1.2 is required. 3702f4aeb0Sopenharmony_ci 3802f4aeb0Sopenharmony_ci EGL_KHR_image_base is required. 3902f4aeb0Sopenharmony_ci 4002f4aeb0Sopenharmony_ci This extension is written against the wording of the EGL 1.2 4102f4aeb0Sopenharmony_ci Specification. 4202f4aeb0Sopenharmony_ci 4302f4aeb0Sopenharmony_ciOverview 4402f4aeb0Sopenharmony_ci 4502f4aeb0Sopenharmony_ci This extension enables using a Tizen native buffer (struct 4602f4aeb0Sopenharmony_ci native_buffer) as an EGLImage source. 4702f4aeb0Sopenharmony_ci 4802f4aeb0Sopenharmony_ciNew Types 4902f4aeb0Sopenharmony_ci 5002f4aeb0Sopenharmony_ci None. 5102f4aeb0Sopenharmony_ci 5202f4aeb0Sopenharmony_ciNew Procedures and Functions 5302f4aeb0Sopenharmony_ci 5402f4aeb0Sopenharmony_ci None. 5502f4aeb0Sopenharmony_ci 5602f4aeb0Sopenharmony_ciNew Tokens 5702f4aeb0Sopenharmony_ci 5802f4aeb0Sopenharmony_ci Accepted by the <target> parameter of eglCreateImageKHR: 5902f4aeb0Sopenharmony_ci 6002f4aeb0Sopenharmony_ci EGL_NATIVE_BUFFER_TIZEN 0x32A0 6102f4aeb0Sopenharmony_ci 6202f4aeb0Sopenharmony_ciChanges to Chapter 3 of the EGL 1.2 Specification (EGL Functions and Errors) 6302f4aeb0Sopenharmony_ci 6402f4aeb0Sopenharmony_ci Add to section 2.5.1 "EGLImage Specification" (as defined by the 6502f4aeb0Sopenharmony_ci EGL_KHR_image_base specification), in the description of 6602f4aeb0Sopenharmony_ci eglCreateImageKHR: 6702f4aeb0Sopenharmony_ci 6802f4aeb0Sopenharmony_ci "Values accepted for <target> are listed in Table aaa, below. 6902f4aeb0Sopenharmony_ci 7002f4aeb0Sopenharmony_ci +-------------------------+--------------------------------------+ 7102f4aeb0Sopenharmony_ci | <target> | Notes | 7202f4aeb0Sopenharmony_ci +-------------------------+--------------------------------------+ 7302f4aeb0Sopenharmony_ci | EGL_NATIVE_BUFFER_TIZEN | Used for Tizen native_buffer objects | 7402f4aeb0Sopenharmony_ci +-------------------------+--------------------------------------+ 7502f4aeb0Sopenharmony_ci Table aaa. Legal values for eglCreateImageKHR <target> parameter 7602f4aeb0Sopenharmony_ci 7702f4aeb0Sopenharmony_ci ... 7802f4aeb0Sopenharmony_ci 7902f4aeb0Sopenharmony_ci If <target> is EGL_NATIVE_BUFFER_TIZEN, <dpy> must be a valid display, 8002f4aeb0Sopenharmony_ci <ctx> must be EGL_NO_CONTEXT, <buffer> must be a pointer to a valid 8102f4aeb0Sopenharmony_ci native_buffer object (cast into the type EGLClientBuffer), and 8202f4aeb0Sopenharmony_ci attributes other than EGL_IMAGE_PRESERVED_KHR are ignored." 8302f4aeb0Sopenharmony_ci 8402f4aeb0Sopenharmony_ci Add to the list of error conditions for eglCreateImageKHR: 8502f4aeb0Sopenharmony_ci 8602f4aeb0Sopenharmony_ci "* If <target> is EGL_NATIVE_BUFFER_TIZEN and <buffer> is not a 8702f4aeb0Sopenharmony_ci pointer to a valid native_buffer, the error EGL_BAD_PARAMETER 8802f4aeb0Sopenharmony_ci is generated. 8902f4aeb0Sopenharmony_ci 9002f4aeb0Sopenharmony_ci * If <target> is EGL_NATIVE_BUFFER_TIZEN and <ctx> is not 9102f4aeb0Sopenharmony_ci EGL_NO_CONTEXT, the error EGL_BAD_CONTEXT is generated. 9202f4aeb0Sopenharmony_ci 9302f4aeb0Sopenharmony_ci * If <target> is EGL_NATIVE_BUFFER_TIZEN and <buffer> was created 9402f4aeb0Sopenharmony_ci with properties (format, usage, dimensions, etc.) not supported by 9502f4aeb0Sopenharmony_ci the EGL implementation, the error EGL_BAD_PARAMETER is generated." 9602f4aeb0Sopenharmony_ci 9702f4aeb0Sopenharmony_ciIssues 9802f4aeb0Sopenharmony_ci 9902f4aeb0Sopenharmony_ci 1. Should this extension define what combinations of native_buffer 10002f4aeb0Sopenharmony_ci properties implementations are required to support? 10102f4aeb0Sopenharmony_ci 10202f4aeb0Sopenharmony_ci RESOLVED: No. 10302f4aeb0Sopenharmony_ci 10402f4aeb0Sopenharmony_ci The requirements have evolved over time and will continue to change with 10502f4aeb0Sopenharmony_ci future Tizen releases. The minimum requirements for a given Tizen 10602f4aeb0Sopenharmony_ci version should be documented by that version. 10702f4aeb0Sopenharmony_ci 10802f4aeb0Sopenharmony_ci 10902f4aeb0Sopenharmony_ciRevision History 11002f4aeb0Sopenharmony_ci 11102f4aeb0Sopenharmony_ci#2 (Zeeshan Anwar, July 01, 2014) 11202f4aeb0Sopenharmony_ci - Assigned the value to EGL_NATIVE_BUFFER_TIZEN 11302f4aeb0Sopenharmony_ci#1 (Dongyeon Kim, June 05, 2013) 11402f4aeb0Sopenharmony_ci - Initial draft. 115