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

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

Issue 1203513004: Respect the disabled extension list during binding initialization. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: split extension binding loading from static binding loading; pass enabled extensions Created 5 years, 6 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
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 GetGLProcAddress("eglSwapInterval")); 97 GetGLProcAddress("eglSwapInterval"));
98 fn.eglTerminateFn = 98 fn.eglTerminateFn =
99 reinterpret_cast<eglTerminateProc>(GetGLProcAddress("eglTerminate")); 99 reinterpret_cast<eglTerminateProc>(GetGLProcAddress("eglTerminate"));
100 fn.eglWaitClientFn = 100 fn.eglWaitClientFn =
101 reinterpret_cast<eglWaitClientProc>(GetGLProcAddress("eglWaitClient")); 101 reinterpret_cast<eglWaitClientProc>(GetGLProcAddress("eglWaitClient"));
102 fn.eglWaitGLFn = 102 fn.eglWaitGLFn =
103 reinterpret_cast<eglWaitGLProc>(GetGLProcAddress("eglWaitGL")); 103 reinterpret_cast<eglWaitGLProc>(GetGLProcAddress("eglWaitGL"));
104 fn.eglWaitNativeFn = 104 fn.eglWaitNativeFn =
105 reinterpret_cast<eglWaitNativeProc>(GetGLProcAddress("eglWaitNative")); 105 reinterpret_cast<eglWaitNativeProc>(GetGLProcAddress("eglWaitNative"));
106 fn.eglWaitSyncKHRFn = 0; 106 fn.eglWaitSyncKHRFn = 0;
107 std::string client_extensions(GetClientExtensions()); 107 }
108 client_extensions += " ";
109 ALLOW_UNUSED_LOCAL(client_extensions);
110 108
109 void DriverEGL::InitializeExtensionBindings(
110 const std::set<std::string>& enabled_extensions) {
111 ext.b_EGL_EXT_platform_base = 111 ext.b_EGL_EXT_platform_base =
112 client_extensions.find("EGL_EXT_platform_base ") != std::string::npos; 112 enabled_extensions.find("EGL_EXT_platform_base") !=
113 113 enabled_extensions.end();
114 ext.b_EGL_ANGLE_d3d_share_handle_client_buffer =
115 enabled_extensions.find("EGL_ANGLE_d3d_share_handle_client_buffer") !=
116 enabled_extensions.end();
117 ext.b_EGL_ANGLE_query_surface_pointer =
118 enabled_extensions.find("EGL_ANGLE_query_surface_pointer") !=
119 enabled_extensions.end();
120 ext.b_EGL_ANGLE_surface_d3d_texture_2d_share_handle =
121 enabled_extensions.find(
122 "EGL_ANGLE_surface_d3d_texture_2d_share_handle") !=
123 enabled_extensions.end();
124 ext.b_EGL_CHROMIUM_sync_control =
125 enabled_extensions.find("EGL_CHROMIUM_sync_control") !=
126 enabled_extensions.end();
127 ext.b_EGL_KHR_fence_sync =
128 enabled_extensions.find("EGL_KHR_fence_sync") != enabled_extensions.end();
129 ext.b_EGL_KHR_gl_texture_2D_image =
130 enabled_extensions.find("EGL_KHR_gl_texture_2D_image") !=
131 enabled_extensions.end();
132 ext.b_EGL_KHR_image =
133 enabled_extensions.find("EGL_KHR_image") != enabled_extensions.end();
134 ext.b_EGL_KHR_image_base =
135 enabled_extensions.find("EGL_KHR_image_base") != enabled_extensions.end();
136 ext.b_EGL_KHR_reusable_sync =
137 enabled_extensions.find("EGL_KHR_reusable_sync") !=
138 enabled_extensions.end();
139 ext.b_EGL_KHR_wait_sync =
140 enabled_extensions.find("EGL_KHR_wait_sync") != enabled_extensions.end();
141 ext.b_EGL_NV_post_sub_buffer =
142 enabled_extensions.find("EGL_NV_post_sub_buffer") !=
143 enabled_extensions.end();
114 debug_fn.eglGetPlatformDisplayEXTFn = 0; 144 debug_fn.eglGetPlatformDisplayEXTFn = 0;
115 if (ext.b_EGL_EXT_platform_base) { 145 if (ext.b_EGL_EXT_platform_base) {
116 fn.eglGetPlatformDisplayEXTFn = 146 fn.eglGetPlatformDisplayEXTFn =
117 reinterpret_cast<eglGetPlatformDisplayEXTProc>( 147 reinterpret_cast<eglGetPlatformDisplayEXTProc>(
118 GetGLProcAddress("eglGetPlatformDisplayEXT")); 148 GetGLProcAddress("eglGetPlatformDisplayEXT"));
119 DCHECK(fn.eglGetPlatformDisplayEXTFn); 149 DCHECK(fn.eglGetPlatformDisplayEXTFn);
120 } 150 }
121 std::string extensions(GetPlatformExtensions());
122 extensions += " ";
123 ALLOW_UNUSED_LOCAL(extensions);
124
125 ext.b_EGL_ANGLE_d3d_share_handle_client_buffer =
126 extensions.find("EGL_ANGLE_d3d_share_handle_client_buffer ") !=
127 std::string::npos;
128 ext.b_EGL_ANGLE_query_surface_pointer =
129 extensions.find("EGL_ANGLE_query_surface_pointer ") != std::string::npos;
130 ext.b_EGL_ANGLE_surface_d3d_texture_2d_share_handle =
131 extensions.find("EGL_ANGLE_surface_d3d_texture_2d_share_handle ") !=
132 std::string::npos;
133 ext.b_EGL_CHROMIUM_sync_control =
134 extensions.find("EGL_CHROMIUM_sync_control ") != std::string::npos;
135 ext.b_EGL_KHR_fence_sync =
136 extensions.find("EGL_KHR_fence_sync ") != std::string::npos;
137 ext.b_EGL_KHR_gl_texture_2D_image =
138 extensions.find("EGL_KHR_gl_texture_2D_image ") != std::string::npos;
139 ext.b_EGL_KHR_image = extensions.find("EGL_KHR_image ") != std::string::npos;
140 ext.b_EGL_KHR_image_base =
141 extensions.find("EGL_KHR_image_base ") != std::string::npos;
142 ext.b_EGL_KHR_reusable_sync =
143 extensions.find("EGL_KHR_reusable_sync ") != std::string::npos;
144 ext.b_EGL_KHR_wait_sync =
145 extensions.find("EGL_KHR_wait_sync ") != std::string::npos;
146 ext.b_EGL_NV_post_sub_buffer =
147 extensions.find("EGL_NV_post_sub_buffer ") != std::string::npos;
148 151
149 debug_fn.eglClientWaitSyncKHRFn = 0; 152 debug_fn.eglClientWaitSyncKHRFn = 0;
150 if (ext.b_EGL_KHR_fence_sync || ext.b_EGL_KHR_reusable_sync) { 153 if (ext.b_EGL_KHR_fence_sync || ext.b_EGL_KHR_reusable_sync) {
151 fn.eglClientWaitSyncKHRFn = reinterpret_cast<eglClientWaitSyncKHRProc>( 154 fn.eglClientWaitSyncKHRFn = reinterpret_cast<eglClientWaitSyncKHRProc>(
152 GetGLProcAddress("eglClientWaitSyncKHR")); 155 GetGLProcAddress("eglClientWaitSyncKHR"));
153 DCHECK(fn.eglClientWaitSyncKHRFn); 156 DCHECK(fn.eglClientWaitSyncKHRFn);
154 } 157 }
155 158
156 debug_fn.eglCreateImageKHRFn = 0; 159 debug_fn.eglCreateImageKHRFn = 0;
157 if (ext.b_EGL_KHR_image || ext.b_EGL_KHR_image_base || 160 if (ext.b_EGL_KHR_image || ext.b_EGL_KHR_image_base ||
(...skipping 1330 matching lines...) Expand 10 before | Expand all | Expand 10 after
1488 } 1491 }
1489 1492
1490 EGLint TraceEGLApi::eglWaitSyncKHRFn(EGLDisplay dpy, 1493 EGLint TraceEGLApi::eglWaitSyncKHRFn(EGLDisplay dpy,
1491 EGLSyncKHR sync, 1494 EGLSyncKHR sync,
1492 EGLint flags) { 1495 EGLint flags) {
1493 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::eglWaitSyncKHR") 1496 TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::eglWaitSyncKHR")
1494 return egl_api_->eglWaitSyncKHRFn(dpy, sync, flags); 1497 return egl_api_->eglWaitSyncKHRFn(dpy, sync, flags);
1495 } 1498 }
1496 1499
1497 } // namespace gfx 1500 } // namespace gfx
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698