• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Name
2
3    KHR_image
4
5Name Strings
6
7    EGL_KHR_image
8
9Contributors
10
11    Jeff Juliano
12    Gary King
13    Jon Leech
14    Jonathan Grant
15    Barthold Lichtenbelt
16    Aaftab Munshi
17    Acorn Pooley
18    Chris Wynn
19
20Contacts
21
22    Jon Leech (jon 'at' alumni.caltech.edu)
23    Gary King, NVIDIA Corporation (gking 'at' nvidia.com)
24
25Notice
26
27    Copyright (c) 2006-2013 The Khronos Group Inc. Copyright terms at
28        http://www.khronos.org/registry/speccopyright.html
29
30Status
31
32    Complete.
33    Approved by the Khronos Board of Promoters on February 11, 2008.
34
35    Rewritten in terms of split functionality in KHR_image_base and
36    KHR_image_pixmap, approved by the Khronos Technical Working Group
37    on November 19, 2008.
38
39Version
40
41    Version 11, November 12, 2008
42
43Number
44
45    EGL Extension #3
46
47Dependencies
48
49    EGL 1.2 is required.
50
51    An EGL client API, such as OpenGL ES or OpenVG, is required.
52
53    The specifications of EGL_KHR_image_base and EGL_KHR_image_pixmap are
54    required to determine the specification of this extension, although
55    those extentions may not be supported.
56
57    This extension is written against the wording of the EGL 1.2
58    Specification.
59
60Overview
61
62    This extension defines a new EGL resource type that is suitable for
63    sharing 2D arrays of image data between client APIs, the EGLImage,
64    and allows creating EGLImages from EGL native pixmaps.
65
66New Types
67
68    As defined by EGL_KHR_image_base.
69
70New Procedures and Functions
71
72    As defined by EGL_KHR_image_base.
73
74New Tokens
75
76    As defined by EGL_KHR_image_base and EGL_KHR_image_pixmap, with the
77    exception that EGL_IMAGE_PRESERVED_KHR is not defined by this
78    extension.
79
80Additions to Chapter 2 of the EGL 1.2 Specification (EGL Operation)
81
82    EGL_KHR_image is equivalent to the combination of the functionality
83    defined by EGL_KHR_image_base and EGL_KHR_image_pixmap, with the
84    exception that if EGL_KHR_image is supported and EGL_KHR_image_base
85    is not, the attribute EGL_IMAGE_PRESERVED_KHR is not accepted in
86    <attrib_list>, However, the default value of this attribute is still
87    EGL_FALSE. In this situation, image preservation is always disabled.
88
89Issues
90
91    None (but see the issues lists for EGL_KHR_image_base and
92    EGL_KHR_image_pixmap).
93
94Revision History
95
96#11 (Jon Leech, November 12, 2008)
97    - Clarified image preservation behavior when using this extension.
98#10 (Jon Leech, October 22, 2008)
99    - Update description of interactions with EGL_KHR_image_base now
100      that the default value of EGL_IMAGE_PRESERVED_KHR is always FALSE.
101#9  (Jon Leech, October 21, 2008)
102    - Split functionality into new extensions EGL_KHR_image_base and
103      EGL_KHR_image_pixmap, and defined legacy non-preserved image behavior
104      when this extension is supported.
105#8  (Jon Leech, October 8, 2008)
106    - Updated status (approved as part of OpenKODE 1.0)
107#7  (Jon Leech, November 20, 2007)
108    - Corrected 'enum' to 'EGLenum' in prototypes.
109#6  (Jon Leech, April 5, 2007)
110    - Assigned enumerant values
111    - Added OpenKODE 1.0 Provisional disclaimer
112#5  (Jon Leech, February 26, 2007)
113    - Add eglCreateImageKHR error if native pixmaps are not supported by
114      EGL.
115#4  (December 14, 2006)
116    - Replaced EGL_OUT_OF_MEMORY error with EGL_BAD_ALLOC
117    - add "egl" and "EGL" to names to be consistant with spec
118    - formatting to keep within 80 columns
119    - Changed requirement to egl 1.2 to include EGLClientBuffer type.
120    - clarified some unclear error cases
121    - added some new error cases related to <dpy> and <ctx>
122    - add <dpy> param to eglCreateImageKHR and eglDestroyImageKHR
123#3  (November 27, 2006)
124    - Converted OES token to KHR token
125#2  (October 20, 2006)
126    - Split out API-specific image source types (VG, GL, etc.) into
127      individual extensions.
128    - Merged CreateImage2DOES and CreateImage3DOES functions into
129      a single CreateImageOES function with an attribute-value list.
130    - Removed the minimum requirements section (2.5.3), since this
131      doesn't make sense without the client-API specific extensions.
132      The minimum requirements should be migrated to the client-API
133      specific extension specifications.
134    - Added EGL_NO_IMAGE_OES default object, used as return value for
135      CreateImage*OES functions in the event of error conditions.
136    - Reworded issue 5, to clarify that the buffer sub-object (i.e.,
137      the unique resource specified by <ctx>, <target>, <buffer>,
138      and <attrib_list>) specified in CreateImage may not already be
139      an EGLImage sibling (either EGLImage source or EGLImage target).
140#1  Original release
141