65 |
65 |
66 Provide support for the Symbian Graphics SHAI for EGL Extensions |
66 Provide support for the Symbian Graphics SHAI for EGL Extensions |
67 @param aName Name of extension |
67 @param aName Name of extension |
68 @return Function pointer, or NULL if not available. |
68 @return Function pointer, or NULL if not available. |
69 |
69 |
70 @note Known extensions: |
70 @note Known extensions and their directly associated functions: |
71 1. EGL_KHR_image |
71 1. EGL_KHR_image |
72 2. EGL_KHR_image_base |
72 None |
|
73 2. EGL_KHR_image_base |
|
74 eglCreateImageKHR, |
|
75 eglDestroyImageKHR |
73 3. EGL_KHR_image_pixmap |
76 3. EGL_KHR_image_pixmap |
|
77 None |
74 4. EGL_KHR_vg_parent_image |
78 4. EGL_KHR_vg_parent_image |
|
79 None |
75 5. EGL_KHR_gl_texture_2D_image |
80 5. EGL_KHR_gl_texture_2D_image |
|
81 None |
76 6. EGL_KHR_gl_texture_cubemap_image |
82 6. EGL_KHR_gl_texture_cubemap_image |
77 7. EGL_KHR_lock_surface |
83 EGLImageTargetTexture2DOES, |
|
84 EGLImageTargetRenderbufferStorageOES |
|
85 7. EGL_KHR_lock_surface2 |
|
86 eglLockSurfaceKHR, |
|
87 eglUnlockSurfaceKHR |
78 8. EGL_NOK_resource_profiling2 |
88 8. EGL_NOK_resource_profiling2 |
|
89 eglQueryProfilingDataNOK |
79 9. EGL_SYMBIAN_composition |
90 9. EGL_SYMBIAN_composition |
|
91 None |
80 10. EGL_NOK_image_endpoint |
92 10. EGL_NOK_image_endpoint |
|
93 eglCreateEndpointNOK, |
|
94 eglDestroyEndpointNOK, |
|
95 eglGetEndpointAttribNOK, |
|
96 eglSetEndpointAttribNOK, |
|
97 eglEndpointBeginStreamingNOK, |
|
98 eglEndpointEndStreamingNOK, |
|
99 eglAcquireImageNOK, |
|
100 eglReleaseImageNOK, |
|
101 eglGetEndpointDirtyAreaNOK, |
|
102 eglEndpointRequestNotificationNOK, |
|
103 eglEndpointCancelNotificationNOK, |
|
104 eglCreateEndpointNOK |
81 11. NOK_pixmap_type_rsgimage |
105 11. NOK_pixmap_type_rsgimage |
82 12. eglSwapBuffersRegionNOK |
106 None |
|
107 12. EGL_NOK_swap_region |
|
108 eglSwapBuffersRegionNOK |
83 |
109 |
84 @see Khronos EGL 1.4 Specification, eglGetProcAddress() |
110 @see Khronos EGL 1.4 Specification, eglGetProcAddress() |
85 @author Faisal Memon Community EGL project |
111 @author Faisal Memon Community EGL project |
86 |
112 |
87 */ |
113 */ |
88 ProcPointer CGuestEGL::eglGetProcAddress(const char* aName) |
114 ProcPointer CGuestEGL::eglGetProcAddress(const char* aName) |
89 { |
115 { |
90 if (strncmp("EGL_KHR_image", aName, strlen("EGL_KHR_image")) == 0) |
116 if (strncmp("eglCreateImageKHR", aName, strlen("eglCreateImageKHR")) == 0) |
91 { |
117 { |
92 return NULL; |
118 return NULL; |
93 } |
119 } |
94 else if (strncmp("EGL_KHR_image_base", aName, strlen("EGL_KHR_image_base")) == 0) |
120 else if (strncmp("eglDestroyImageKHR", aName, strlen("eglDestroyImageKHR")) == 0) |
95 { |
121 { |
96 return NULL; |
122 return NULL; |
97 } |
123 } |
98 else if (strncmp("EGL_KHR_image_pixmap", aName, strlen("EGL_KHR_image_pixmap")) == 0) |
124 else if (strncmp("EGLImageTargetTexture2DOES", aName, strlen("EGLImageTargetTexture2DOES")) == 0) |
|
125 None |
99 { |
126 { |
100 return NULL; |
127 return NULL; |
101 } |
128 } |
102 else if (strncmp("EGL_KHR_vg_parent_image", aName, strlen("EGL_KHR_vg_parent_image")) == 0) |
129 else if (strncmp("EGLImageTargetRenderbufferStorageOES", aName, strlen("EGLImageTargetRenderbufferStorageOES")) == 0) |
103 { |
130 { |
104 return NULL; |
131 return NULL; |
105 } |
132 } |
106 else if (strncmp("EGL_KHR_gl_texture_2D_image", aName, strlen("EGL_KHR_gl_texture_2D_image")) == 0) |
133 else if (strncmp("eglLockSurfaceKHR", aName, strlen("eglLockSurfaceKHR")) == 0) |
107 { |
134 { |
108 return NULL; |
135 return NULL; |
109 } |
136 } |
110 else if (strncmp("EGL_KHR_gl_texture_cubemap_image", aName, strlen("EGL_KHR_gl_texture_cubemap_image")) == 0) |
137 else if (strncmp("eglUnlockSurfaceKHR", aName, strlen("eglUnlockSurfaceKHR")) == 0) |
111 { |
138 { |
112 return NULL; |
139 return NULL; |
113 } |
140 } |
114 else if (strncmp("EGL_KHR_lock_surface", aName, strlen("EGL_KHR_lock_surface")) == 0) |
141 else if (strncmp("EGL_KHR_lock_surface", aName, strlen("EGL_KHR_lock_surface")) == 0) |
115 { |
142 { |
116 return NULL; |
143 return NULL; |
117 } |
144 } |
118 else if (strncmp("EGL_NOK_resource_profiling2", aName, strlen("EGL_NOK_resource_profiling2")) == 0) |
145 else if (strncmp("eglQueryProfilingDataNOK", aName, strlen("eglQueryProfilingDataNOK")) == 0) |
119 { |
146 { |
120 return NULL; |
147 return NULL; |
121 } |
148 } |
122 else if (strncmp("EGL_SYMBIAN_composition", aName, strlen("EGL_SYMBIAN_composition")) == 0) |
149 else if (strncmp("eglCreateEndpointNOK", aName, strlen("eglCreateEndpointNOK")) == 0) |
123 { |
150 { |
124 return NULL; |
151 return NULL; |
125 } |
152 } |
126 else if (strncmp("EGL_NOK_image_endpoint", aName, strlen("EGL_NOK_image_endpoint")) == 0) |
153 else if (strncmp("eglDestroyEndpointNOK", aName, strlen("eglDestroyEndpointNOK")) == 0) |
127 { |
154 { |
128 return NULL; |
155 return NULL; |
129 } |
156 } |
130 else if (strncmp("NOK_pixmap_type_rsgimage", aName, strlen("NOK_pixmap_type_rsgimage")) == 0) |
157 else if (strncmp("eglGetEndpointAttribNOK", aName, strlen("eglGetEndpointAttribNOK")) == 0) |
|
158 { |
|
159 return NULL; |
|
160 } |
|
161 else if (strncmp("eglEndpointBeginStreamingNOK", aName, strlen("eglEndpointBeginStreamingNOK")) == 0) |
|
162 { |
|
163 return NULL; |
|
164 } |
|
165 else if (strncmp("eglEndpointEndStreamingNOK", aName, strlen("eglEndpointEndStreamingNOK")) == 0) |
|
166 { |
|
167 return NULL; |
|
168 } |
|
169 else if (strncmp("eglAcquireImageNOK", aName, strlen("eglAcquireImageNOK")) == 0) |
|
170 { |
|
171 return NULL; |
|
172 } |
|
173 else if (strncmp("eglReleaseImageNOK", aName, strlen("eglReleaseImageNOK")) == 0) |
|
174 { |
|
175 return NULL; |
|
176 } |
|
177 else if (strncmp("eglGetEndpointDirtyAreaNOK", aName, strlen("eglGetEndpointDirtyAreaNOK")) == 0) |
|
178 { |
|
179 return NULL; |
|
180 } |
|
181 else if (strncmp("eglEndpointRequestNotificationNOK", aName, strlen("eglEndpointRequestNotificationNOK")) == 0) |
|
182 { |
|
183 return NULL; |
|
184 } |
|
185 else if (strncmp("eglEndpointCancelNotificationNOK", aName, strlen("eglEndpointCancelNotificationNOK")) == 0) |
|
186 { |
|
187 return NULL; |
|
188 } |
|
189 else if (strncmp("eglCreateEndpointNOK", aName, strlen("eglCreateEndpointNOK")) == 0) |
131 { |
190 { |
132 return NULL; |
191 return NULL; |
133 } |
192 } |
134 else if (strncmp("eglSwapBuffersRegionNOK", aName, strlen("eglSwapBuffersRegionNOK")) == 0) |
193 else if (strncmp("eglSwapBuffersRegionNOK", aName, strlen("eglSwapBuffersRegionNOK")) == 0) |
135 { |
194 { |