Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: ui/gl/gl_bindings_autogen_egl.cc

Issue 871763002: Make GL bindings conditional (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: address comments, try fix broken builds Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 // 4 //
5 // This file is auto-generated from 5 // This file is auto-generated from
6 // ui/gl/generate_bindings.py 6 // ui/gl/generate_bindings.py
7 // It's formatted by clang-format using chromium coding style: 7 // It's formatted by clang-format using chromium coding style:
8 // clang-format -i -style=chromium filename 8 // clang-format -i -style=chromium filename
9 // DO NOT EDIT! 9 // DO NOT EDIT!
10 10
11 #include <string> 11 #include <string>
12 12
13 #include "base/debug/trace_event.h" 13 #include "base/debug/trace_event.h"
14 #include "ui/gl/gl_bindings.h" 14 #include "ui/gl/gl_bindings.h"
15 #include "ui/gl/gl_context.h" 15 #include "ui/gl/gl_context.h"
16 #include "ui/gl/gl_egl_api_implementation.h" 16 #include "ui/gl/gl_egl_api_implementation.h"
17 #include "ui/gl/gl_enums.h" 17 #include "ui/gl/gl_enums.h"
18 #include "ui/gl/gl_implementation.h" 18 #include "ui/gl/gl_implementation.h"
19 #include "ui/gl/gl_version_info.h" 19 #include "ui/gl/gl_version_info.h"
20 20
21 namespace gfx { 21 namespace gfx {
22 22
23 static bool g_debugBindingsInitialized; 23 static bool g_debugBindingsInitialized;
24 DriverEGL g_driver_egl; 24 DriverEGL g_driver_egl;
25 25
26 EGLint eglClientWaitSyncKHRNotBound(EGLDisplay dpy,
27 EGLSyncKHR sync,
28 EGLint flags,
29 EGLTimeKHR timeout) {
30 NOTREACHED();
31 return 0;
32 }
33 EGLImageKHR eglCreateImageKHRNotBound(EGLDisplay dpy,
34 EGLContext ctx,
35 EGLenum target,
36 EGLClientBuffer buffer,
37 const EGLint* attrib_list) {
38 NOTREACHED();
39 return 0;
40 }
41 EGLSyncKHR eglCreateSyncKHRNotBound(EGLDisplay dpy,
42 EGLenum type,
43 const EGLint* attrib_list) {
44 NOTREACHED();
45 return 0;
46 }
47 EGLBoolean eglDestroyImageKHRNotBound(EGLDisplay dpy, EGLImageKHR image) {
48 NOTREACHED();
49 return 0;
50 }
51 EGLBoolean eglDestroySyncKHRNotBound(EGLDisplay dpy, EGLSyncKHR sync) {
52 NOTREACHED();
53 return 0;
54 }
55 EGLDisplay eglGetPlatformDisplayEXTNotBound(EGLenum platform,
56 void* native_display,
57 const EGLint* attrib_list) {
58 NOTREACHED();
59 return 0;
60 }
61 EGLBoolean eglGetSyncAttribKHRNotBound(EGLDisplay dpy,
62 EGLSyncKHR sync,
63 EGLint attribute,
64 EGLint* value) {
65 NOTREACHED();
66 return 0;
67 }
68 EGLBoolean eglGetSyncValuesCHROMIUMNotBound(EGLDisplay dpy,
69 EGLSurface surface,
70 EGLuint64CHROMIUM* ust,
71 EGLuint64CHROMIUM* msc,
72 EGLuint64CHROMIUM* sbc) {
73 NOTREACHED();
74 return 0;
75 }
76 EGLBoolean eglPostSubBufferNVNotBound(EGLDisplay dpy,
77 EGLSurface surface,
78 EGLint x,
79 EGLint y,
80 EGLint width,
81 EGLint height) {
82 NOTREACHED();
83 return 0;
84 }
85 EGLBoolean eglQuerySurfacePointerANGLENotBound(EGLDisplay dpy,
86 EGLSurface surface,
87 EGLint attribute,
88 void** value) {
89 NOTREACHED();
90 return 0;
91 }
92 EGLint eglWaitSyncKHRNotBound(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags) {
93 NOTREACHED();
94 return 0;
95 }
96
26 void DriverEGL::InitializeStaticBindings() { 97 void DriverEGL::InitializeStaticBindings() {
27 fn.eglBindAPIFn = 98 fn.eglBindAPIFn =
28 reinterpret_cast<eglBindAPIProc>(GetGLProcAddress("eglBindAPI")); 99 reinterpret_cast<eglBindAPIProc>(GetGLProcAddress("eglBindAPI"));
29 fn.eglBindTexImageFn = reinterpret_cast<eglBindTexImageProc>( 100 fn.eglBindTexImageFn = reinterpret_cast<eglBindTexImageProc>(
30 GetGLProcAddress("eglBindTexImage")); 101 GetGLProcAddress("eglBindTexImage"));
31 fn.eglChooseConfigFn = reinterpret_cast<eglChooseConfigProc>( 102 fn.eglChooseConfigFn = reinterpret_cast<eglChooseConfigProc>(
32 GetGLProcAddress("eglChooseConfig")); 103 GetGLProcAddress("eglChooseConfig"));
33 fn.eglClientWaitSyncKHRFn = reinterpret_cast<eglClientWaitSyncKHRProc>( 104 fn.eglClientWaitSyncKHRFn =
34 GetGLProcAddress("eglClientWaitSyncKHR")); 105 reinterpret_cast<eglClientWaitSyncKHRProc>(eglClientWaitSyncKHRNotBound);
35 fn.eglCopyBuffersFn = 106 fn.eglCopyBuffersFn =
36 reinterpret_cast<eglCopyBuffersProc>(GetGLProcAddress("eglCopyBuffers")); 107 reinterpret_cast<eglCopyBuffersProc>(GetGLProcAddress("eglCopyBuffers"));
37 fn.eglCreateContextFn = reinterpret_cast<eglCreateContextProc>( 108 fn.eglCreateContextFn = reinterpret_cast<eglCreateContextProc>(
38 GetGLProcAddress("eglCreateContext")); 109 GetGLProcAddress("eglCreateContext"));
39 fn.eglCreateImageKHRFn = reinterpret_cast<eglCreateImageKHRProc>( 110 fn.eglCreateImageKHRFn =
40 GetGLProcAddress("eglCreateImageKHR")); 111 reinterpret_cast<eglCreateImageKHRProc>(eglCreateImageKHRNotBound);
41 fn.eglCreatePbufferFromClientBufferFn = 112 fn.eglCreatePbufferFromClientBufferFn =
42 reinterpret_cast<eglCreatePbufferFromClientBufferProc>( 113 reinterpret_cast<eglCreatePbufferFromClientBufferProc>(
43 GetGLProcAddress("eglCreatePbufferFromClientBuffer")); 114 GetGLProcAddress("eglCreatePbufferFromClientBuffer"));
44 fn.eglCreatePbufferSurfaceFn = reinterpret_cast<eglCreatePbufferSurfaceProc>( 115 fn.eglCreatePbufferSurfaceFn = reinterpret_cast<eglCreatePbufferSurfaceProc>(
45 GetGLProcAddress("eglCreatePbufferSurface")); 116 GetGLProcAddress("eglCreatePbufferSurface"));
46 fn.eglCreatePixmapSurfaceFn = reinterpret_cast<eglCreatePixmapSurfaceProc>( 117 fn.eglCreatePixmapSurfaceFn = reinterpret_cast<eglCreatePixmapSurfaceProc>(
47 GetGLProcAddress("eglCreatePixmapSurface")); 118 GetGLProcAddress("eglCreatePixmapSurface"));
48 fn.eglCreateSyncKHRFn = reinterpret_cast<eglCreateSyncKHRProc>( 119 fn.eglCreateSyncKHRFn =
49 GetGLProcAddress("eglCreateSyncKHR")); 120 reinterpret_cast<eglCreateSyncKHRProc>(eglCreateSyncKHRNotBound);
50 fn.eglCreateWindowSurfaceFn = reinterpret_cast<eglCreateWindowSurfaceProc>( 121 fn.eglCreateWindowSurfaceFn = reinterpret_cast<eglCreateWindowSurfaceProc>(
51 GetGLProcAddress("eglCreateWindowSurface")); 122 GetGLProcAddress("eglCreateWindowSurface"));
52 fn.eglDestroyContextFn = reinterpret_cast<eglDestroyContextProc>( 123 fn.eglDestroyContextFn = reinterpret_cast<eglDestroyContextProc>(
53 GetGLProcAddress("eglDestroyContext")); 124 GetGLProcAddress("eglDestroyContext"));
54 fn.eglDestroyImageKHRFn = reinterpret_cast<eglDestroyImageKHRProc>( 125 fn.eglDestroyImageKHRFn =
55 GetGLProcAddress("eglDestroyImageKHR")); 126 reinterpret_cast<eglDestroyImageKHRProc>(eglDestroyImageKHRNotBound);
56 fn.eglDestroySurfaceFn = reinterpret_cast<eglDestroySurfaceProc>( 127 fn.eglDestroySurfaceFn = reinterpret_cast<eglDestroySurfaceProc>(
57 GetGLProcAddress("eglDestroySurface")); 128 GetGLProcAddress("eglDestroySurface"));
58 fn.eglDestroySyncKHRFn = reinterpret_cast<eglDestroySyncKHRProc>( 129 fn.eglDestroySyncKHRFn =
59 GetGLProcAddress("eglDestroySyncKHR")); 130 reinterpret_cast<eglDestroySyncKHRProc>(eglDestroySyncKHRNotBound);
60 fn.eglGetConfigAttribFn = reinterpret_cast<eglGetConfigAttribProc>( 131 fn.eglGetConfigAttribFn = reinterpret_cast<eglGetConfigAttribProc>(
61 GetGLProcAddress("eglGetConfigAttrib")); 132 GetGLProcAddress("eglGetConfigAttrib"));
62 fn.eglGetConfigsFn = 133 fn.eglGetConfigsFn =
63 reinterpret_cast<eglGetConfigsProc>(GetGLProcAddress("eglGetConfigs")); 134 reinterpret_cast<eglGetConfigsProc>(GetGLProcAddress("eglGetConfigs"));
64 fn.eglGetCurrentContextFn = reinterpret_cast<eglGetCurrentContextProc>( 135 fn.eglGetCurrentContextFn = reinterpret_cast<eglGetCurrentContextProc>(
65 GetGLProcAddress("eglGetCurrentContext")); 136 GetGLProcAddress("eglGetCurrentContext"));
66 fn.eglGetCurrentDisplayFn = reinterpret_cast<eglGetCurrentDisplayProc>( 137 fn.eglGetCurrentDisplayFn = reinterpret_cast<eglGetCurrentDisplayProc>(
67 GetGLProcAddress("eglGetCurrentDisplay")); 138 GetGLProcAddress("eglGetCurrentDisplay"));
68 fn.eglGetCurrentSurfaceFn = reinterpret_cast<eglGetCurrentSurfaceProc>( 139 fn.eglGetCurrentSurfaceFn = reinterpret_cast<eglGetCurrentSurfaceProc>(
69 GetGLProcAddress("eglGetCurrentSurface")); 140 GetGLProcAddress("eglGetCurrentSurface"));
70 fn.eglGetDisplayFn = 141 fn.eglGetDisplayFn =
71 reinterpret_cast<eglGetDisplayProc>(GetGLProcAddress("eglGetDisplay")); 142 reinterpret_cast<eglGetDisplayProc>(GetGLProcAddress("eglGetDisplay"));
72 fn.eglGetErrorFn = 143 fn.eglGetErrorFn =
73 reinterpret_cast<eglGetErrorProc>(GetGLProcAddress("eglGetError")); 144 reinterpret_cast<eglGetErrorProc>(GetGLProcAddress("eglGetError"));
74 fn.eglGetPlatformDisplayEXTFn = 145 fn.eglGetPlatformDisplayEXTFn =
75 reinterpret_cast<eglGetPlatformDisplayEXTProc>( 146 reinterpret_cast<eglGetPlatformDisplayEXTProc>(
76 GetGLProcAddress("eglGetPlatformDisplayEXT")); 147 eglGetPlatformDisplayEXTNotBound);
77 fn.eglGetProcAddressFn = reinterpret_cast<eglGetProcAddressProc>( 148 fn.eglGetProcAddressFn = reinterpret_cast<eglGetProcAddressProc>(
78 GetGLProcAddress("eglGetProcAddress")); 149 GetGLProcAddress("eglGetProcAddress"));
79 fn.eglGetSyncAttribKHRFn = reinterpret_cast<eglGetSyncAttribKHRProc>( 150 fn.eglGetSyncAttribKHRFn =
80 GetGLProcAddress("eglGetSyncAttribKHR")); 151 reinterpret_cast<eglGetSyncAttribKHRProc>(eglGetSyncAttribKHRNotBound);
81 fn.eglGetSyncValuesCHROMIUMFn = 152 fn.eglGetSyncValuesCHROMIUMFn =
82 reinterpret_cast<eglGetSyncValuesCHROMIUMProc>( 153 reinterpret_cast<eglGetSyncValuesCHROMIUMProc>(
83 GetGLProcAddress("eglGetSyncValuesCHROMIUM")); 154 eglGetSyncValuesCHROMIUMNotBound);
84 fn.eglInitializeFn = 155 fn.eglInitializeFn =
85 reinterpret_cast<eglInitializeProc>(GetGLProcAddress("eglInitialize")); 156 reinterpret_cast<eglInitializeProc>(GetGLProcAddress("eglInitialize"));
86 fn.eglMakeCurrentFn = 157 fn.eglMakeCurrentFn =
87 reinterpret_cast<eglMakeCurrentProc>(GetGLProcAddress("eglMakeCurrent")); 158 reinterpret_cast<eglMakeCurrentProc>(GetGLProcAddress("eglMakeCurrent"));
88 fn.eglPostSubBufferNVFn = reinterpret_cast<eglPostSubBufferNVProc>( 159 fn.eglPostSubBufferNVFn =
89 GetGLProcAddress("eglPostSubBufferNV")); 160 reinterpret_cast<eglPostSubBufferNVProc>(eglPostSubBufferNVNotBound);
90 fn.eglQueryAPIFn = 161 fn.eglQueryAPIFn =
91 reinterpret_cast<eglQueryAPIProc>(GetGLProcAddress("eglQueryAPI")); 162 reinterpret_cast<eglQueryAPIProc>(GetGLProcAddress("eglQueryAPI"));
92 fn.eglQueryContextFn = reinterpret_cast<eglQueryContextProc>( 163 fn.eglQueryContextFn = reinterpret_cast<eglQueryContextProc>(
93 GetGLProcAddress("eglQueryContext")); 164 GetGLProcAddress("eglQueryContext"));
94 fn.eglQueryStringFn = 165 fn.eglQueryStringFn =
95 reinterpret_cast<eglQueryStringProc>(GetGLProcAddress("eglQueryString")); 166 reinterpret_cast<eglQueryStringProc>(GetGLProcAddress("eglQueryString"));
96 fn.eglQuerySurfaceFn = reinterpret_cast<eglQuerySurfaceProc>( 167 fn.eglQuerySurfaceFn = reinterpret_cast<eglQuerySurfaceProc>(
97 GetGLProcAddress("eglQuerySurface")); 168 GetGLProcAddress("eglQuerySurface"));
98 fn.eglQuerySurfacePointerANGLEFn = 169 fn.eglQuerySurfacePointerANGLEFn =
99 reinterpret_cast<eglQuerySurfacePointerANGLEProc>( 170 reinterpret_cast<eglQuerySurfacePointerANGLEProc>(
100 GetGLProcAddress("eglQuerySurfacePointerANGLE")); 171 eglQuerySurfacePointerANGLENotBound);
101 fn.eglReleaseTexImageFn = reinterpret_cast<eglReleaseTexImageProc>( 172 fn.eglReleaseTexImageFn = reinterpret_cast<eglReleaseTexImageProc>(
102 GetGLProcAddress("eglReleaseTexImage")); 173 GetGLProcAddress("eglReleaseTexImage"));
103 fn.eglReleaseThreadFn = reinterpret_cast<eglReleaseThreadProc>( 174 fn.eglReleaseThreadFn = reinterpret_cast<eglReleaseThreadProc>(
104 GetGLProcAddress("eglReleaseThread")); 175 GetGLProcAddress("eglReleaseThread"));
105 fn.eglSurfaceAttribFn = reinterpret_cast<eglSurfaceAttribProc>( 176 fn.eglSurfaceAttribFn = reinterpret_cast<eglSurfaceAttribProc>(
106 GetGLProcAddress("eglSurfaceAttrib")); 177 GetGLProcAddress("eglSurfaceAttrib"));
107 fn.eglSwapBuffersFn = 178 fn.eglSwapBuffersFn =
108 reinterpret_cast<eglSwapBuffersProc>(GetGLProcAddress("eglSwapBuffers")); 179 reinterpret_cast<eglSwapBuffersProc>(GetGLProcAddress("eglSwapBuffers"));
109 fn.eglSwapIntervalFn = reinterpret_cast<eglSwapIntervalProc>( 180 fn.eglSwapIntervalFn = reinterpret_cast<eglSwapIntervalProc>(
110 GetGLProcAddress("eglSwapInterval")); 181 GetGLProcAddress("eglSwapInterval"));
111 fn.eglTerminateFn = 182 fn.eglTerminateFn =
112 reinterpret_cast<eglTerminateProc>(GetGLProcAddress("eglTerminate")); 183 reinterpret_cast<eglTerminateProc>(GetGLProcAddress("eglTerminate"));
113 fn.eglWaitClientFn = 184 fn.eglWaitClientFn =
114 reinterpret_cast<eglWaitClientProc>(GetGLProcAddress("eglWaitClient")); 185 reinterpret_cast<eglWaitClientProc>(GetGLProcAddress("eglWaitClient"));
115 fn.eglWaitGLFn = 186 fn.eglWaitGLFn =
116 reinterpret_cast<eglWaitGLProc>(GetGLProcAddress("eglWaitGL")); 187 reinterpret_cast<eglWaitGLProc>(GetGLProcAddress("eglWaitGL"));
117 fn.eglWaitNativeFn = 188 fn.eglWaitNativeFn =
118 reinterpret_cast<eglWaitNativeProc>(GetGLProcAddress("eglWaitNative")); 189 reinterpret_cast<eglWaitNativeProc>(GetGLProcAddress("eglWaitNative"));
119 fn.eglWaitSyncKHRFn = 190 fn.eglWaitSyncKHRFn =
120 reinterpret_cast<eglWaitSyncKHRProc>(GetGLProcAddress("eglWaitSyncKHR")); 191 reinterpret_cast<eglWaitSyncKHRProc>(eglWaitSyncKHRNotBound);
121 } 192 std::string extensions(GetPlatformExtensions());
122 193 extensions += " ";
123 void DriverEGL::InitializeDynamicBindings(GLContext* context) {
124 DCHECK(context && context->IsCurrent(NULL));
125 const GLVersionInfo* ver = context->GetVersionInfo();
126 ALLOW_UNUSED_LOCAL(ver);
127 std::string extensions = context->GetExtensions() + " ";
128 ALLOW_UNUSED_LOCAL(extensions); 194 ALLOW_UNUSED_LOCAL(extensions);
129 195
130 ext.b_EGL_ANGLE_d3d_share_handle_client_buffer = 196 ext.b_EGL_ANGLE_d3d_share_handle_client_buffer =
131 extensions.find("EGL_ANGLE_d3d_share_handle_client_buffer ") != 197 extensions.find("EGL_ANGLE_d3d_share_handle_client_buffer ") !=
132 std::string::npos; 198 std::string::npos;
133 ext.b_EGL_ANGLE_platform_angle = 199 ext.b_EGL_ANGLE_platform_angle =
134 extensions.find("EGL_ANGLE_platform_angle ") != std::string::npos; 200 extensions.find("EGL_ANGLE_platform_angle ") != std::string::npos;
135 ext.b_EGL_ANGLE_query_surface_pointer = 201 ext.b_EGL_ANGLE_query_surface_pointer =
136 extensions.find("EGL_ANGLE_query_surface_pointer ") != std::string::npos; 202 extensions.find("EGL_ANGLE_query_surface_pointer ") != std::string::npos;
137 ext.b_EGL_ANGLE_surface_d3d_texture_2d_share_handle = 203 ext.b_EGL_ANGLE_surface_d3d_texture_2d_share_handle =
138 extensions.find("EGL_ANGLE_surface_d3d_texture_2d_share_handle ") != 204 extensions.find("EGL_ANGLE_surface_d3d_texture_2d_share_handle ") !=
139 std::string::npos; 205 std::string::npos;
140 ext.b_EGL_CHROMIUM_sync_control = 206 ext.b_EGL_CHROMIUM_sync_control =
141 extensions.find("EGL_CHROMIUM_sync_control ") != std::string::npos; 207 extensions.find("EGL_CHROMIUM_sync_control ") != std::string::npos;
142 ext.b_EGL_KHR_fence_sync = 208 ext.b_EGL_KHR_fence_sync =
143 extensions.find("EGL_KHR_fence_sync ") != std::string::npos; 209 extensions.find("EGL_KHR_fence_sync ") != std::string::npos;
144 ext.b_EGL_KHR_gl_texture_2D_image = 210 ext.b_EGL_KHR_gl_texture_2D_image =
145 extensions.find("EGL_KHR_gl_texture_2D_image ") != std::string::npos; 211 extensions.find("EGL_KHR_gl_texture_2D_image ") != std::string::npos;
212 ext.b_EGL_KHR_image = extensions.find("EGL_KHR_image ") != std::string::npos;
146 ext.b_EGL_KHR_image_base = 213 ext.b_EGL_KHR_image_base =
147 extensions.find("EGL_KHR_image_base ") != std::string::npos; 214 extensions.find("EGL_KHR_image_base ") != std::string::npos;
215 ext.b_EGL_KHR_reusable_sync =
216 extensions.find("EGL_KHR_reusable_sync ") != std::string::npos;
148 ext.b_EGL_KHR_wait_sync = 217 ext.b_EGL_KHR_wait_sync =
149 extensions.find("EGL_KHR_wait_sync ") != std::string::npos; 218 extensions.find("EGL_KHR_wait_sync ") != std::string::npos;
150 ext.b_EGL_NV_post_sub_buffer = 219 ext.b_EGL_NV_post_sub_buffer =
151 extensions.find("EGL_NV_post_sub_buffer ") != std::string::npos; 220 extensions.find("EGL_NV_post_sub_buffer ") != std::string::npos;
152 221
222 debug_fn.eglClientWaitSyncKHRFn = 0;
223 if (ext.b_EGL_KHR_fence_sync || ext.b_EGL_KHR_reusable_sync) {
224 fn.eglClientWaitSyncKHRFn = reinterpret_cast<eglClientWaitSyncKHRProc>(
225 GetGLProcAddress("eglClientWaitSyncKHR"));
226 }
227 DCHECK(fn.eglClientWaitSyncKHRFn);
228
229 debug_fn.eglCreateImageKHRFn = 0;
230 if (ext.b_EGL_KHR_image || ext.b_EGL_KHR_image_base ||
231 ext.b_EGL_KHR_gl_texture_2D_image) {
232 fn.eglCreateImageKHRFn = reinterpret_cast<eglCreateImageKHRProc>(
233 GetGLProcAddress("eglCreateImageKHR"));
234 }
235 DCHECK(fn.eglCreateImageKHRFn);
236
237 debug_fn.eglCreateSyncKHRFn = 0;
238 if (ext.b_EGL_KHR_fence_sync || ext.b_EGL_KHR_reusable_sync) {
239 fn.eglCreateSyncKHRFn = reinterpret_cast<eglCreateSyncKHRProc>(
240 GetGLProcAddress("eglCreateSyncKHR"));
241 }
242 DCHECK(fn.eglCreateSyncKHRFn);
243
244 debug_fn.eglDestroyImageKHRFn = 0;
245 if (ext.b_EGL_KHR_image || ext.b_EGL_KHR_image_base) {
246 fn.eglDestroyImageKHRFn = reinterpret_cast<eglDestroyImageKHRProc>(
247 GetGLProcAddress("eglDestroyImageKHR"));
248 }
249 DCHECK(fn.eglDestroyImageKHRFn);
250
251 debug_fn.eglDestroySyncKHRFn = 0;
252 if (ext.b_EGL_KHR_fence_sync || ext.b_EGL_KHR_reusable_sync) {
253 fn.eglDestroySyncKHRFn = reinterpret_cast<eglDestroySyncKHRProc>(
254 GetGLProcAddress("eglDestroySyncKHR"));
255 }
256 DCHECK(fn.eglDestroySyncKHRFn);
257
258 debug_fn.eglGetPlatformDisplayEXTFn = 0;
259 if (ext.b_EGL_ANGLE_platform_angle) {
260 fn.eglGetPlatformDisplayEXTFn =
261 reinterpret_cast<eglGetPlatformDisplayEXTProc>(
262 GetGLProcAddress("eglGetPlatformDisplayEXT"));
263 }
264 DCHECK(fn.eglGetPlatformDisplayEXTFn);
265
266 debug_fn.eglGetSyncAttribKHRFn = 0;
267 if (ext.b_EGL_KHR_fence_sync || ext.b_EGL_KHR_reusable_sync) {
268 fn.eglGetSyncAttribKHRFn = reinterpret_cast<eglGetSyncAttribKHRProc>(
269 GetGLProcAddress("eglGetSyncAttribKHR"));
270 }
271 DCHECK(fn.eglGetSyncAttribKHRFn);
272
273 debug_fn.eglGetSyncValuesCHROMIUMFn = 0;
274 if (ext.b_EGL_CHROMIUM_sync_control) {
275 fn.eglGetSyncValuesCHROMIUMFn =
276 reinterpret_cast<eglGetSyncValuesCHROMIUMProc>(
277 GetGLProcAddress("eglGetSyncValuesCHROMIUM"));
278 }
279 DCHECK(fn.eglGetSyncValuesCHROMIUMFn);
280
281 debug_fn.eglPostSubBufferNVFn = 0;
282 if (ext.b_EGL_NV_post_sub_buffer) {
283 fn.eglPostSubBufferNVFn = reinterpret_cast<eglPostSubBufferNVProc>(
284 GetGLProcAddress("eglPostSubBufferNV"));
285 }
286 DCHECK(fn.eglPostSubBufferNVFn);
287
288 debug_fn.eglQuerySurfacePointerANGLEFn = 0;
289 if (ext.b_EGL_ANGLE_query_surface_pointer) {
290 fn.eglQuerySurfacePointerANGLEFn =
291 reinterpret_cast<eglQuerySurfacePointerANGLEProc>(
292 GetGLProcAddress("eglQuerySurfacePointerANGLE"));
293 }
294 DCHECK(fn.eglQuerySurfacePointerANGLEFn);
295
296 debug_fn.eglWaitSyncKHRFn = 0;
297 if (ext.b_EGL_KHR_fence_sync || ext.b_EGL_KHR_wait_sync) {
298 fn.eglWaitSyncKHRFn = reinterpret_cast<eglWaitSyncKHRProc>(
299 GetGLProcAddress("eglWaitSyncKHR"));
300 }
301 DCHECK(fn.eglWaitSyncKHRFn);
302
153 if (g_debugBindingsInitialized) 303 if (g_debugBindingsInitialized)
154 InitializeDebugBindings(); 304 InitializeDebugBindings();
155 } 305 }
156 306
157 extern "C" { 307 extern "C" {
158 308
159 static EGLBoolean GL_BINDING_CALL Debug_eglBindAPI(EGLenum api) { 309 static EGLBoolean GL_BINDING_CALL Debug_eglBindAPI(EGLenum api) {
160 GL_SERVICE_LOG("eglBindAPI" 310 GL_SERVICE_LOG("eglBindAPI"
161 << "(" << api << ")"); 311 << "(" << api << ")");
162 EGLBoolean result = g_driver_egl.debug_fn.eglBindAPIFn(api); 312 EGLBoolean result = g_driver_egl.debug_fn.eglBindAPIFn(api);
(...skipping 1256 matching lines...) Expand 10 before | Expand all | Expand 10 after
1419 } 1569 }
1420 1570
1421 EGLint TraceEGLApi::eglWaitSyncKHRFn(EGLDisplay dpy, 1571 EGLint TraceEGLApi::eglWaitSyncKHRFn(EGLDisplay dpy,
1422 EGLSyncKHR sync, 1572 EGLSyncKHR sync,
1423 EGLint flags) { 1573 EGLint flags) {
1424 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::eglWaitSyncKHR") 1574 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::eglWaitSyncKHR")
1425 return egl_api_->eglWaitSyncKHRFn(dpy, sync, flags); 1575 return egl_api_->eglWaitSyncKHRFn(dpy, sync, flags);
1426 } 1576 }
1427 1577
1428 } // namespace gfx 1578 } // namespace gfx
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698