Index: ui/gl/gl_bindings_autogen_glx.cc |
diff --git a/ui/gl/gl_bindings_autogen_glx.cc b/ui/gl/gl_bindings_autogen_glx.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..617ff5fc6b4df5518ec8ee97b83e9f76410aa33e |
--- /dev/null |
+++ b/ui/gl/gl_bindings_autogen_glx.cc |
@@ -0,0 +1,1463 @@ |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+// |
+// This file is auto-generated from |
+// ui/gl/generate_bindings.py |
+// It's formatted by clang-format using chromium coding style: |
+// clang-format -i -style=chromium filename |
+// DO NOT EDIT! |
+ |
+#include <string> |
+ |
+#include "base/debug/trace_event.h" |
+#include "ui/gl/gl_bindings.h" |
+#include "ui/gl/gl_context.h" |
+#include "ui/gl/gl_enums.h" |
+#include "ui/gl/gl_glx_api_implementation.h" |
+#include "ui/gl/gl_implementation.h" |
+#include "ui/gl/gl_version_info.h" |
+ |
+namespace gfx { |
+ |
+static bool g_debugBindingsInitialized; |
+DriverGLX g_driver_glx; |
+ |
+void DriverGLX::InitializeStaticBindings() { |
+ fn.glXBindTexImageEXTFn = reinterpret_cast<glXBindTexImageEXTProc>( |
+ GetGLProcAddress("glXBindTexImageEXT")); |
+ fn.glXChooseFBConfigFn = reinterpret_cast<glXChooseFBConfigProc>( |
+ GetGLProcAddress("glXChooseFBConfig")); |
+ fn.glXChooseVisualFn = reinterpret_cast<glXChooseVisualProc>( |
+ GetGLProcAddress("glXChooseVisual")); |
+ fn.glXCopyContextFn = |
+ reinterpret_cast<glXCopyContextProc>(GetGLProcAddress("glXCopyContext")); |
+ fn.glXCopySubBufferMESAFn = reinterpret_cast<glXCopySubBufferMESAProc>( |
+ GetGLProcAddress("glXCopySubBufferMESA")); |
+ fn.glXCreateContextFn = reinterpret_cast<glXCreateContextProc>( |
+ GetGLProcAddress("glXCreateContext")); |
+ fn.glXCreateContextAttribsARBFn = |
+ reinterpret_cast<glXCreateContextAttribsARBProc>( |
+ GetGLProcAddress("glXCreateContextAttribsARB")); |
+ fn.glXCreateGLXPixmapFn = reinterpret_cast<glXCreateGLXPixmapProc>( |
+ GetGLProcAddress("glXCreateGLXPixmap")); |
+ fn.glXCreateNewContextFn = reinterpret_cast<glXCreateNewContextProc>( |
+ GetGLProcAddress("glXCreateNewContext")); |
+ fn.glXCreatePbufferFn = reinterpret_cast<glXCreatePbufferProc>( |
+ GetGLProcAddress("glXCreatePbuffer")); |
+ fn.glXCreatePixmapFn = reinterpret_cast<glXCreatePixmapProc>( |
+ GetGLProcAddress("glXCreatePixmap")); |
+ fn.glXCreateWindowFn = reinterpret_cast<glXCreateWindowProc>( |
+ GetGLProcAddress("glXCreateWindow")); |
+ fn.glXDestroyContextFn = reinterpret_cast<glXDestroyContextProc>( |
+ GetGLProcAddress("glXDestroyContext")); |
+ fn.glXDestroyGLXPixmapFn = reinterpret_cast<glXDestroyGLXPixmapProc>( |
+ GetGLProcAddress("glXDestroyGLXPixmap")); |
+ fn.glXDestroyPbufferFn = reinterpret_cast<glXDestroyPbufferProc>( |
+ GetGLProcAddress("glXDestroyPbuffer")); |
+ fn.glXDestroyPixmapFn = reinterpret_cast<glXDestroyPixmapProc>( |
+ GetGLProcAddress("glXDestroyPixmap")); |
+ fn.glXDestroyWindowFn = reinterpret_cast<glXDestroyWindowProc>( |
+ GetGLProcAddress("glXDestroyWindow")); |
+ fn.glXGetClientStringFn = reinterpret_cast<glXGetClientStringProc>( |
+ GetGLProcAddress("glXGetClientString")); |
+ fn.glXGetConfigFn = |
+ reinterpret_cast<glXGetConfigProc>(GetGLProcAddress("glXGetConfig")); |
+ fn.glXGetCurrentContextFn = reinterpret_cast<glXGetCurrentContextProc>( |
+ GetGLProcAddress("glXGetCurrentContext")); |
+ fn.glXGetCurrentDisplayFn = reinterpret_cast<glXGetCurrentDisplayProc>( |
+ GetGLProcAddress("glXGetCurrentDisplay")); |
+ fn.glXGetCurrentDrawableFn = reinterpret_cast<glXGetCurrentDrawableProc>( |
+ GetGLProcAddress("glXGetCurrentDrawable")); |
+ fn.glXGetCurrentReadDrawableFn = |
+ reinterpret_cast<glXGetCurrentReadDrawableProc>( |
+ GetGLProcAddress("glXGetCurrentReadDrawable")); |
+ fn.glXGetFBConfigAttribFn = reinterpret_cast<glXGetFBConfigAttribProc>( |
+ GetGLProcAddress("glXGetFBConfigAttrib")); |
+ fn.glXGetFBConfigFromVisualSGIXFn = |
+ reinterpret_cast<glXGetFBConfigFromVisualSGIXProc>( |
+ GetGLProcAddress("glXGetFBConfigFromVisualSGIX")); |
+ fn.glXGetFBConfigsFn = reinterpret_cast<glXGetFBConfigsProc>( |
+ GetGLProcAddress("glXGetFBConfigs")); |
+ fn.glXGetMscRateOMLFn = reinterpret_cast<glXGetMscRateOMLProc>( |
+ GetGLProcAddress("glXGetMscRateOML")); |
+ fn.glXGetSelectedEventFn = reinterpret_cast<glXGetSelectedEventProc>( |
+ GetGLProcAddress("glXGetSelectedEvent")); |
+ fn.glXGetSyncValuesOMLFn = reinterpret_cast<glXGetSyncValuesOMLProc>( |
+ GetGLProcAddress("glXGetSyncValuesOML")); |
+ fn.glXGetVisualFromFBConfigFn = |
+ reinterpret_cast<glXGetVisualFromFBConfigProc>( |
+ GetGLProcAddress("glXGetVisualFromFBConfig")); |
+ fn.glXIsDirectFn = |
+ reinterpret_cast<glXIsDirectProc>(GetGLProcAddress("glXIsDirect")); |
+ fn.glXMakeContextCurrentFn = reinterpret_cast<glXMakeContextCurrentProc>( |
+ GetGLProcAddress("glXMakeContextCurrent")); |
+ fn.glXMakeCurrentFn = |
+ reinterpret_cast<glXMakeCurrentProc>(GetGLProcAddress("glXMakeCurrent")); |
+ fn.glXQueryContextFn = reinterpret_cast<glXQueryContextProc>( |
+ GetGLProcAddress("glXQueryContext")); |
+ fn.glXQueryDrawableFn = reinterpret_cast<glXQueryDrawableProc>( |
+ GetGLProcAddress("glXQueryDrawable")); |
+ fn.glXQueryExtensionFn = reinterpret_cast<glXQueryExtensionProc>( |
+ GetGLProcAddress("glXQueryExtension")); |
+ fn.glXQueryExtensionsStringFn = |
+ reinterpret_cast<glXQueryExtensionsStringProc>( |
+ GetGLProcAddress("glXQueryExtensionsString")); |
+ fn.glXQueryServerStringFn = reinterpret_cast<glXQueryServerStringProc>( |
+ GetGLProcAddress("glXQueryServerString")); |
+ fn.glXQueryVersionFn = reinterpret_cast<glXQueryVersionProc>( |
+ GetGLProcAddress("glXQueryVersion")); |
+ fn.glXReleaseTexImageEXTFn = reinterpret_cast<glXReleaseTexImageEXTProc>( |
+ GetGLProcAddress("glXReleaseTexImageEXT")); |
+ fn.glXSelectEventFn = |
+ reinterpret_cast<glXSelectEventProc>(GetGLProcAddress("glXSelectEvent")); |
+ fn.glXSwapBuffersFn = |
+ reinterpret_cast<glXSwapBuffersProc>(GetGLProcAddress("glXSwapBuffers")); |
+ fn.glXSwapIntervalEXTFn = reinterpret_cast<glXSwapIntervalEXTProc>( |
+ GetGLProcAddress("glXSwapIntervalEXT")); |
+ fn.glXSwapIntervalMESAFn = reinterpret_cast<glXSwapIntervalMESAProc>( |
+ GetGLProcAddress("glXSwapIntervalMESA")); |
+ fn.glXUseXFontFn = |
+ reinterpret_cast<glXUseXFontProc>(GetGLProcAddress("glXUseXFont")); |
+ fn.glXWaitGLFn = |
+ reinterpret_cast<glXWaitGLProc>(GetGLProcAddress("glXWaitGL")); |
+ fn.glXWaitVideoSyncSGIFn = reinterpret_cast<glXWaitVideoSyncSGIProc>( |
+ GetGLProcAddress("glXWaitVideoSyncSGI")); |
+ fn.glXWaitXFn = reinterpret_cast<glXWaitXProc>(GetGLProcAddress("glXWaitX")); |
+} |
+ |
+void DriverGLX::InitializeDynamicBindings(GLContext* context) { |
+ DCHECK(context && context->IsCurrent(NULL)); |
+ const GLVersionInfo* ver = context->GetVersionInfo(); |
+ ALLOW_UNUSED_LOCAL(ver); |
+ std::string extensions = context->GetExtensions() + " "; |
+ ALLOW_UNUSED_LOCAL(extensions); |
+ |
+ ext.b_GLX_ARB_create_context = |
+ extensions.find("GLX_ARB_create_context ") != std::string::npos; |
+ ext.b_GLX_EXT_swap_control = |
+ extensions.find("GLX_EXT_swap_control ") != std::string::npos; |
+ ext.b_GLX_EXT_texture_from_pixmap = |
+ extensions.find("GLX_EXT_texture_from_pixmap ") != std::string::npos; |
+ ext.b_GLX_MESA_copy_sub_buffer = |
+ extensions.find("GLX_MESA_copy_sub_buffer ") != std::string::npos; |
+ ext.b_GLX_MESA_swap_control = |
+ extensions.find("GLX_MESA_swap_control ") != std::string::npos; |
+ ext.b_GLX_OML_sync_control = |
+ extensions.find("GLX_OML_sync_control ") != std::string::npos; |
+ ext.b_GLX_SGIX_fbconfig = |
+ extensions.find("GLX_SGIX_fbconfig ") != std::string::npos; |
+ ext.b_GLX_SGI_video_sync = |
+ extensions.find("GLX_SGI_video_sync ") != std::string::npos; |
+ |
+ if (g_debugBindingsInitialized) |
+ InitializeDebugBindings(); |
+} |
+ |
+extern "C" { |
+ |
+static void GL_BINDING_CALL Debug_glXBindTexImageEXT(Display* dpy, |
+ GLXDrawable drawable, |
+ int buffer, |
+ int* attribList) { |
+ GL_SERVICE_LOG("glXBindTexImageEXT" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ", " << buffer << ", " |
+ << static_cast<const void*>(attribList) << ")"); |
+ g_driver_glx.debug_fn.glXBindTexImageEXTFn(dpy, drawable, buffer, attribList); |
+} |
+ |
+static GLXFBConfig* GL_BINDING_CALL |
+Debug_glXChooseFBConfig(Display* dpy, |
+ int screen, |
+ const int* attribList, |
+ int* nitems) { |
+ GL_SERVICE_LOG("glXChooseFBConfig" |
+ << "(" << static_cast<const void*>(dpy) << ", " << screen |
+ << ", " << static_cast<const void*>(attribList) << ", " |
+ << static_cast<const void*>(nitems) << ")"); |
+ GLXFBConfig* result = g_driver_glx.debug_fn.glXChooseFBConfigFn( |
+ dpy, screen, attribList, nitems); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static XVisualInfo* GL_BINDING_CALL |
+Debug_glXChooseVisual(Display* dpy, int screen, int* attribList) { |
+ GL_SERVICE_LOG("glXChooseVisual" |
+ << "(" << static_cast<const void*>(dpy) << ", " << screen |
+ << ", " << static_cast<const void*>(attribList) << ")"); |
+ XVisualInfo* result = |
+ g_driver_glx.debug_fn.glXChooseVisualFn(dpy, screen, attribList); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static void GL_BINDING_CALL Debug_glXCopyContext(Display* dpy, |
+ GLXContext src, |
+ GLXContext dst, |
+ unsigned long mask) { |
+ GL_SERVICE_LOG("glXCopyContext" |
+ << "(" << static_cast<const void*>(dpy) << ", " << src << ", " |
+ << dst << ", " << mask << ")"); |
+ g_driver_glx.debug_fn.glXCopyContextFn(dpy, src, dst, mask); |
+} |
+ |
+static void GL_BINDING_CALL Debug_glXCopySubBufferMESA(Display* dpy, |
+ GLXDrawable drawable, |
+ int x, |
+ int y, |
+ int width, |
+ int height) { |
+ GL_SERVICE_LOG("glXCopySubBufferMESA" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ", " << x << ", " << y << ", " << width << ", " << height |
+ << ")"); |
+ g_driver_glx.debug_fn.glXCopySubBufferMESAFn(dpy, drawable, x, y, width, |
+ height); |
+} |
+ |
+static GLXContext GL_BINDING_CALL Debug_glXCreateContext(Display* dpy, |
+ XVisualInfo* vis, |
+ GLXContext shareList, |
+ int direct) { |
+ GL_SERVICE_LOG("glXCreateContext" |
+ << "(" << static_cast<const void*>(dpy) << ", " |
+ << static_cast<const void*>(vis) << ", " << shareList << ", " |
+ << direct << ")"); |
+ GLXContext result = |
+ g_driver_glx.debug_fn.glXCreateContextFn(dpy, vis, shareList, direct); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXContext GL_BINDING_CALL |
+Debug_glXCreateContextAttribsARB(Display* dpy, |
+ GLXFBConfig config, |
+ GLXContext share_context, |
+ int direct, |
+ const int* attrib_list) { |
+ GL_SERVICE_LOG("glXCreateContextAttribsARB" |
+ << "(" << static_cast<const void*>(dpy) << ", " << config |
+ << ", " << share_context << ", " << direct << ", " |
+ << static_cast<const void*>(attrib_list) << ")"); |
+ GLXContext result = g_driver_glx.debug_fn.glXCreateContextAttribsARBFn( |
+ dpy, config, share_context, direct, attrib_list); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXPixmap GL_BINDING_CALL |
+Debug_glXCreateGLXPixmap(Display* dpy, XVisualInfo* visual, Pixmap pixmap) { |
+ GL_SERVICE_LOG("glXCreateGLXPixmap" |
+ << "(" << static_cast<const void*>(dpy) << ", " |
+ << static_cast<const void*>(visual) << ", " << pixmap << ")"); |
+ GLXPixmap result = |
+ g_driver_glx.debug_fn.glXCreateGLXPixmapFn(dpy, visual, pixmap); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXContext GL_BINDING_CALL |
+Debug_glXCreateNewContext(Display* dpy, |
+ GLXFBConfig config, |
+ int renderType, |
+ GLXContext shareList, |
+ int direct) { |
+ GL_SERVICE_LOG("glXCreateNewContext" |
+ << "(" << static_cast<const void*>(dpy) << ", " << config |
+ << ", " << renderType << ", " << shareList << ", " << direct |
+ << ")"); |
+ GLXContext result = g_driver_glx.debug_fn.glXCreateNewContextFn( |
+ dpy, config, renderType, shareList, direct); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXPbuffer GL_BINDING_CALL |
+Debug_glXCreatePbuffer(Display* dpy, |
+ GLXFBConfig config, |
+ const int* attribList) { |
+ GL_SERVICE_LOG("glXCreatePbuffer" |
+ << "(" << static_cast<const void*>(dpy) << ", " << config |
+ << ", " << static_cast<const void*>(attribList) << ")"); |
+ GLXPbuffer result = |
+ g_driver_glx.debug_fn.glXCreatePbufferFn(dpy, config, attribList); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXPixmap GL_BINDING_CALL Debug_glXCreatePixmap(Display* dpy, |
+ GLXFBConfig config, |
+ Pixmap pixmap, |
+ const int* attribList) { |
+ GL_SERVICE_LOG("glXCreatePixmap" |
+ << "(" << static_cast<const void*>(dpy) << ", " << config |
+ << ", " << pixmap << ", " |
+ << static_cast<const void*>(attribList) << ")"); |
+ GLXPixmap result = |
+ g_driver_glx.debug_fn.glXCreatePixmapFn(dpy, config, pixmap, attribList); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXWindow GL_BINDING_CALL Debug_glXCreateWindow(Display* dpy, |
+ GLXFBConfig config, |
+ Window win, |
+ const int* attribList) { |
+ GL_SERVICE_LOG("glXCreateWindow" |
+ << "(" << static_cast<const void*>(dpy) << ", " << config |
+ << ", " << win << ", " << static_cast<const void*>(attribList) |
+ << ")"); |
+ GLXWindow result = |
+ g_driver_glx.debug_fn.glXCreateWindowFn(dpy, config, win, attribList); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXDestroyContext(Display* dpy, GLXContext ctx) { |
+ GL_SERVICE_LOG("glXDestroyContext" |
+ << "(" << static_cast<const void*>(dpy) << ", " << ctx << ")"); |
+ g_driver_glx.debug_fn.glXDestroyContextFn(dpy, ctx); |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXDestroyGLXPixmap(Display* dpy, GLXPixmap pixmap) { |
+ GL_SERVICE_LOG("glXDestroyGLXPixmap" |
+ << "(" << static_cast<const void*>(dpy) << ", " << pixmap |
+ << ")"); |
+ g_driver_glx.debug_fn.glXDestroyGLXPixmapFn(dpy, pixmap); |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXDestroyPbuffer(Display* dpy, GLXPbuffer pbuf) { |
+ GL_SERVICE_LOG("glXDestroyPbuffer" |
+ << "(" << static_cast<const void*>(dpy) << ", " << pbuf |
+ << ")"); |
+ g_driver_glx.debug_fn.glXDestroyPbufferFn(dpy, pbuf); |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXDestroyPixmap(Display* dpy, GLXPixmap pixmap) { |
+ GL_SERVICE_LOG("glXDestroyPixmap" |
+ << "(" << static_cast<const void*>(dpy) << ", " << pixmap |
+ << ")"); |
+ g_driver_glx.debug_fn.glXDestroyPixmapFn(dpy, pixmap); |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXDestroyWindow(Display* dpy, GLXWindow window) { |
+ GL_SERVICE_LOG("glXDestroyWindow" |
+ << "(" << static_cast<const void*>(dpy) << ", " << window |
+ << ")"); |
+ g_driver_glx.debug_fn.glXDestroyWindowFn(dpy, window); |
+} |
+ |
+static const char* GL_BINDING_CALL |
+Debug_glXGetClientString(Display* dpy, int name) { |
+ GL_SERVICE_LOG("glXGetClientString" |
+ << "(" << static_cast<const void*>(dpy) << ", " << name |
+ << ")"); |
+ const char* result = g_driver_glx.debug_fn.glXGetClientStringFn(dpy, name); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static int GL_BINDING_CALL |
+Debug_glXGetConfig(Display* dpy, XVisualInfo* visual, int attrib, int* value) { |
+ GL_SERVICE_LOG("glXGetConfig" |
+ << "(" << static_cast<const void*>(dpy) << ", " |
+ << static_cast<const void*>(visual) << ", " << attrib << ", " |
+ << static_cast<const void*>(value) << ")"); |
+ int result = g_driver_glx.debug_fn.glXGetConfigFn(dpy, visual, attrib, value); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXContext GL_BINDING_CALL Debug_glXGetCurrentContext(void) { |
+ GL_SERVICE_LOG("glXGetCurrentContext" |
+ << "(" |
+ << ")"); |
+ GLXContext result = g_driver_glx.debug_fn.glXGetCurrentContextFn(); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static Display* GL_BINDING_CALL Debug_glXGetCurrentDisplay(void) { |
+ GL_SERVICE_LOG("glXGetCurrentDisplay" |
+ << "(" |
+ << ")"); |
+ Display* result = g_driver_glx.debug_fn.glXGetCurrentDisplayFn(); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXDrawable GL_BINDING_CALL Debug_glXGetCurrentDrawable(void) { |
+ GL_SERVICE_LOG("glXGetCurrentDrawable" |
+ << "(" |
+ << ")"); |
+ GLXDrawable result = g_driver_glx.debug_fn.glXGetCurrentDrawableFn(); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXDrawable GL_BINDING_CALL Debug_glXGetCurrentReadDrawable(void) { |
+ GL_SERVICE_LOG("glXGetCurrentReadDrawable" |
+ << "(" |
+ << ")"); |
+ GLXDrawable result = g_driver_glx.debug_fn.glXGetCurrentReadDrawableFn(); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static int GL_BINDING_CALL Debug_glXGetFBConfigAttrib(Display* dpy, |
+ GLXFBConfig config, |
+ int attribute, |
+ int* value) { |
+ GL_SERVICE_LOG("glXGetFBConfigAttrib" |
+ << "(" << static_cast<const void*>(dpy) << ", " << config |
+ << ", " << attribute << ", " << static_cast<const void*>(value) |
+ << ")"); |
+ int result = g_driver_glx.debug_fn.glXGetFBConfigAttribFn(dpy, config, |
+ attribute, value); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXFBConfig GL_BINDING_CALL |
+Debug_glXGetFBConfigFromVisualSGIX(Display* dpy, XVisualInfo* visualInfo) { |
+ GL_SERVICE_LOG("glXGetFBConfigFromVisualSGIX" |
+ << "(" << static_cast<const void*>(dpy) << ", " |
+ << static_cast<const void*>(visualInfo) << ")"); |
+ GLXFBConfig result = |
+ g_driver_glx.debug_fn.glXGetFBConfigFromVisualSGIXFn(dpy, visualInfo); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static GLXFBConfig* GL_BINDING_CALL |
+Debug_glXGetFBConfigs(Display* dpy, int screen, int* nelements) { |
+ GL_SERVICE_LOG("glXGetFBConfigs" |
+ << "(" << static_cast<const void*>(dpy) << ", " << screen |
+ << ", " << static_cast<const void*>(nelements) << ")"); |
+ GLXFBConfig* result = |
+ g_driver_glx.debug_fn.glXGetFBConfigsFn(dpy, screen, nelements); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static bool GL_BINDING_CALL Debug_glXGetMscRateOML(Display* dpy, |
+ GLXDrawable drawable, |
+ int32* numerator, |
+ int32* denominator) { |
+ GL_SERVICE_LOG("glXGetMscRateOML" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ", " << static_cast<const void*>(numerator) << ", " |
+ << static_cast<const void*>(denominator) << ")"); |
+ bool result = g_driver_glx.debug_fn.glXGetMscRateOMLFn( |
+ dpy, drawable, numerator, denominator); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static void GL_BINDING_CALL Debug_glXGetSelectedEvent(Display* dpy, |
+ GLXDrawable drawable, |
+ unsigned long* mask) { |
+ GL_SERVICE_LOG("glXGetSelectedEvent" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ", " << static_cast<const void*>(mask) << ")"); |
+ g_driver_glx.debug_fn.glXGetSelectedEventFn(dpy, drawable, mask); |
+} |
+ |
+static bool GL_BINDING_CALL Debug_glXGetSyncValuesOML(Display* dpy, |
+ GLXDrawable drawable, |
+ int64* ust, |
+ int64* msc, |
+ int64* sbc) { |
+ GL_SERVICE_LOG("glXGetSyncValuesOML" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ", " << static_cast<const void*>(ust) << ", " |
+ << static_cast<const void*>(msc) << ", " |
+ << static_cast<const void*>(sbc) << ")"); |
+ bool result = |
+ g_driver_glx.debug_fn.glXGetSyncValuesOMLFn(dpy, drawable, ust, msc, sbc); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static XVisualInfo* GL_BINDING_CALL |
+Debug_glXGetVisualFromFBConfig(Display* dpy, GLXFBConfig config) { |
+ GL_SERVICE_LOG("glXGetVisualFromFBConfig" |
+ << "(" << static_cast<const void*>(dpy) << ", " << config |
+ << ")"); |
+ XVisualInfo* result = |
+ g_driver_glx.debug_fn.glXGetVisualFromFBConfigFn(dpy, config); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static int GL_BINDING_CALL Debug_glXIsDirect(Display* dpy, GLXContext ctx) { |
+ GL_SERVICE_LOG("glXIsDirect" |
+ << "(" << static_cast<const void*>(dpy) << ", " << ctx << ")"); |
+ int result = g_driver_glx.debug_fn.glXIsDirectFn(dpy, ctx); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static int GL_BINDING_CALL Debug_glXMakeContextCurrent(Display* dpy, |
+ GLXDrawable draw, |
+ GLXDrawable read, |
+ GLXContext ctx) { |
+ GL_SERVICE_LOG("glXMakeContextCurrent" |
+ << "(" << static_cast<const void*>(dpy) << ", " << draw << ", " |
+ << read << ", " << ctx << ")"); |
+ int result = |
+ g_driver_glx.debug_fn.glXMakeContextCurrentFn(dpy, draw, read, ctx); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static int GL_BINDING_CALL |
+Debug_glXMakeCurrent(Display* dpy, GLXDrawable drawable, GLXContext ctx) { |
+ GL_SERVICE_LOG("glXMakeCurrent" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ", " << ctx << ")"); |
+ int result = g_driver_glx.debug_fn.glXMakeCurrentFn(dpy, drawable, ctx); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static int GL_BINDING_CALL |
+Debug_glXQueryContext(Display* dpy, GLXContext ctx, int attribute, int* value) { |
+ GL_SERVICE_LOG("glXQueryContext" |
+ << "(" << static_cast<const void*>(dpy) << ", " << ctx << ", " |
+ << attribute << ", " << static_cast<const void*>(value) |
+ << ")"); |
+ int result = |
+ g_driver_glx.debug_fn.glXQueryContextFn(dpy, ctx, attribute, value); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static void GL_BINDING_CALL Debug_glXQueryDrawable(Display* dpy, |
+ GLXDrawable draw, |
+ int attribute, |
+ unsigned int* value) { |
+ GL_SERVICE_LOG("glXQueryDrawable" |
+ << "(" << static_cast<const void*>(dpy) << ", " << draw << ", " |
+ << attribute << ", " << static_cast<const void*>(value) |
+ << ")"); |
+ g_driver_glx.debug_fn.glXQueryDrawableFn(dpy, draw, attribute, value); |
+} |
+ |
+static int GL_BINDING_CALL |
+Debug_glXQueryExtension(Display* dpy, int* errorb, int* event) { |
+ GL_SERVICE_LOG("glXQueryExtension" |
+ << "(" << static_cast<const void*>(dpy) << ", " |
+ << static_cast<const void*>(errorb) << ", " |
+ << static_cast<const void*>(event) << ")"); |
+ int result = g_driver_glx.debug_fn.glXQueryExtensionFn(dpy, errorb, event); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static const char* GL_BINDING_CALL |
+Debug_glXQueryExtensionsString(Display* dpy, int screen) { |
+ GL_SERVICE_LOG("glXQueryExtensionsString" |
+ << "(" << static_cast<const void*>(dpy) << ", " << screen |
+ << ")"); |
+ const char* result = |
+ g_driver_glx.debug_fn.glXQueryExtensionsStringFn(dpy, screen); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static const char* GL_BINDING_CALL |
+Debug_glXQueryServerString(Display* dpy, int screen, int name) { |
+ GL_SERVICE_LOG("glXQueryServerString" |
+ << "(" << static_cast<const void*>(dpy) << ", " << screen |
+ << ", " << name << ")"); |
+ const char* result = |
+ g_driver_glx.debug_fn.glXQueryServerStringFn(dpy, screen, name); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static int GL_BINDING_CALL |
+Debug_glXQueryVersion(Display* dpy, int* maj, int* min) { |
+ GL_SERVICE_LOG("glXQueryVersion" |
+ << "(" << static_cast<const void*>(dpy) << ", " |
+ << static_cast<const void*>(maj) << ", " |
+ << static_cast<const void*>(min) << ")"); |
+ int result = g_driver_glx.debug_fn.glXQueryVersionFn(dpy, maj, min); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXReleaseTexImageEXT(Display* dpy, GLXDrawable drawable, int buffer) { |
+ GL_SERVICE_LOG("glXReleaseTexImageEXT" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ", " << buffer << ")"); |
+ g_driver_glx.debug_fn.glXReleaseTexImageEXTFn(dpy, drawable, buffer); |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXSelectEvent(Display* dpy, GLXDrawable drawable, unsigned long mask) { |
+ GL_SERVICE_LOG("glXSelectEvent" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ", " << mask << ")"); |
+ g_driver_glx.debug_fn.glXSelectEventFn(dpy, drawable, mask); |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXSwapBuffers(Display* dpy, GLXDrawable drawable) { |
+ GL_SERVICE_LOG("glXSwapBuffers" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ")"); |
+ g_driver_glx.debug_fn.glXSwapBuffersFn(dpy, drawable); |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXSwapIntervalEXT(Display* dpy, GLXDrawable drawable, int interval) { |
+ GL_SERVICE_LOG("glXSwapIntervalEXT" |
+ << "(" << static_cast<const void*>(dpy) << ", " << drawable |
+ << ", " << interval << ")"); |
+ g_driver_glx.debug_fn.glXSwapIntervalEXTFn(dpy, drawable, interval); |
+} |
+ |
+static void GL_BINDING_CALL Debug_glXSwapIntervalMESA(unsigned int interval) { |
+ GL_SERVICE_LOG("glXSwapIntervalMESA" |
+ << "(" << interval << ")"); |
+ g_driver_glx.debug_fn.glXSwapIntervalMESAFn(interval); |
+} |
+ |
+static void GL_BINDING_CALL |
+Debug_glXUseXFont(Font font, int first, int count, int list) { |
+ GL_SERVICE_LOG("glXUseXFont" |
+ << "(" << font << ", " << first << ", " << count << ", " |
+ << list << ")"); |
+ g_driver_glx.debug_fn.glXUseXFontFn(font, first, count, list); |
+} |
+ |
+static void GL_BINDING_CALL Debug_glXWaitGL(void) { |
+ GL_SERVICE_LOG("glXWaitGL" |
+ << "(" |
+ << ")"); |
+ g_driver_glx.debug_fn.glXWaitGLFn(); |
+} |
+ |
+static int GL_BINDING_CALL |
+Debug_glXWaitVideoSyncSGI(int divisor, int remainder, unsigned int* count) { |
+ GL_SERVICE_LOG("glXWaitVideoSyncSGI" |
+ << "(" << divisor << ", " << remainder << ", " |
+ << static_cast<const void*>(count) << ")"); |
+ int result = |
+ g_driver_glx.debug_fn.glXWaitVideoSyncSGIFn(divisor, remainder, count); |
+ GL_SERVICE_LOG("GL_RESULT: " << result); |
+ return result; |
+} |
+ |
+static void GL_BINDING_CALL Debug_glXWaitX(void) { |
+ GL_SERVICE_LOG("glXWaitX" |
+ << "(" |
+ << ")"); |
+ g_driver_glx.debug_fn.glXWaitXFn(); |
+} |
+} // extern "C" |
+ |
+void DriverGLX::InitializeDebugBindings() { |
+ if (!debug_fn.glXBindTexImageEXTFn) { |
+ debug_fn.glXBindTexImageEXTFn = fn.glXBindTexImageEXTFn; |
+ fn.glXBindTexImageEXTFn = Debug_glXBindTexImageEXT; |
+ } |
+ if (!debug_fn.glXChooseFBConfigFn) { |
+ debug_fn.glXChooseFBConfigFn = fn.glXChooseFBConfigFn; |
+ fn.glXChooseFBConfigFn = Debug_glXChooseFBConfig; |
+ } |
+ if (!debug_fn.glXChooseVisualFn) { |
+ debug_fn.glXChooseVisualFn = fn.glXChooseVisualFn; |
+ fn.glXChooseVisualFn = Debug_glXChooseVisual; |
+ } |
+ if (!debug_fn.glXCopyContextFn) { |
+ debug_fn.glXCopyContextFn = fn.glXCopyContextFn; |
+ fn.glXCopyContextFn = Debug_glXCopyContext; |
+ } |
+ if (!debug_fn.glXCopySubBufferMESAFn) { |
+ debug_fn.glXCopySubBufferMESAFn = fn.glXCopySubBufferMESAFn; |
+ fn.glXCopySubBufferMESAFn = Debug_glXCopySubBufferMESA; |
+ } |
+ if (!debug_fn.glXCreateContextFn) { |
+ debug_fn.glXCreateContextFn = fn.glXCreateContextFn; |
+ fn.glXCreateContextFn = Debug_glXCreateContext; |
+ } |
+ if (!debug_fn.glXCreateContextAttribsARBFn) { |
+ debug_fn.glXCreateContextAttribsARBFn = fn.glXCreateContextAttribsARBFn; |
+ fn.glXCreateContextAttribsARBFn = Debug_glXCreateContextAttribsARB; |
+ } |
+ if (!debug_fn.glXCreateGLXPixmapFn) { |
+ debug_fn.glXCreateGLXPixmapFn = fn.glXCreateGLXPixmapFn; |
+ fn.glXCreateGLXPixmapFn = Debug_glXCreateGLXPixmap; |
+ } |
+ if (!debug_fn.glXCreateNewContextFn) { |
+ debug_fn.glXCreateNewContextFn = fn.glXCreateNewContextFn; |
+ fn.glXCreateNewContextFn = Debug_glXCreateNewContext; |
+ } |
+ if (!debug_fn.glXCreatePbufferFn) { |
+ debug_fn.glXCreatePbufferFn = fn.glXCreatePbufferFn; |
+ fn.glXCreatePbufferFn = Debug_glXCreatePbuffer; |
+ } |
+ if (!debug_fn.glXCreatePixmapFn) { |
+ debug_fn.glXCreatePixmapFn = fn.glXCreatePixmapFn; |
+ fn.glXCreatePixmapFn = Debug_glXCreatePixmap; |
+ } |
+ if (!debug_fn.glXCreateWindowFn) { |
+ debug_fn.glXCreateWindowFn = fn.glXCreateWindowFn; |
+ fn.glXCreateWindowFn = Debug_glXCreateWindow; |
+ } |
+ if (!debug_fn.glXDestroyContextFn) { |
+ debug_fn.glXDestroyContextFn = fn.glXDestroyContextFn; |
+ fn.glXDestroyContextFn = Debug_glXDestroyContext; |
+ } |
+ if (!debug_fn.glXDestroyGLXPixmapFn) { |
+ debug_fn.glXDestroyGLXPixmapFn = fn.glXDestroyGLXPixmapFn; |
+ fn.glXDestroyGLXPixmapFn = Debug_glXDestroyGLXPixmap; |
+ } |
+ if (!debug_fn.glXDestroyPbufferFn) { |
+ debug_fn.glXDestroyPbufferFn = fn.glXDestroyPbufferFn; |
+ fn.glXDestroyPbufferFn = Debug_glXDestroyPbuffer; |
+ } |
+ if (!debug_fn.glXDestroyPixmapFn) { |
+ debug_fn.glXDestroyPixmapFn = fn.glXDestroyPixmapFn; |
+ fn.glXDestroyPixmapFn = Debug_glXDestroyPixmap; |
+ } |
+ if (!debug_fn.glXDestroyWindowFn) { |
+ debug_fn.glXDestroyWindowFn = fn.glXDestroyWindowFn; |
+ fn.glXDestroyWindowFn = Debug_glXDestroyWindow; |
+ } |
+ if (!debug_fn.glXGetClientStringFn) { |
+ debug_fn.glXGetClientStringFn = fn.glXGetClientStringFn; |
+ fn.glXGetClientStringFn = Debug_glXGetClientString; |
+ } |
+ if (!debug_fn.glXGetConfigFn) { |
+ debug_fn.glXGetConfigFn = fn.glXGetConfigFn; |
+ fn.glXGetConfigFn = Debug_glXGetConfig; |
+ } |
+ if (!debug_fn.glXGetCurrentContextFn) { |
+ debug_fn.glXGetCurrentContextFn = fn.glXGetCurrentContextFn; |
+ fn.glXGetCurrentContextFn = Debug_glXGetCurrentContext; |
+ } |
+ if (!debug_fn.glXGetCurrentDisplayFn) { |
+ debug_fn.glXGetCurrentDisplayFn = fn.glXGetCurrentDisplayFn; |
+ fn.glXGetCurrentDisplayFn = Debug_glXGetCurrentDisplay; |
+ } |
+ if (!debug_fn.glXGetCurrentDrawableFn) { |
+ debug_fn.glXGetCurrentDrawableFn = fn.glXGetCurrentDrawableFn; |
+ fn.glXGetCurrentDrawableFn = Debug_glXGetCurrentDrawable; |
+ } |
+ if (!debug_fn.glXGetCurrentReadDrawableFn) { |
+ debug_fn.glXGetCurrentReadDrawableFn = fn.glXGetCurrentReadDrawableFn; |
+ fn.glXGetCurrentReadDrawableFn = Debug_glXGetCurrentReadDrawable; |
+ } |
+ if (!debug_fn.glXGetFBConfigAttribFn) { |
+ debug_fn.glXGetFBConfigAttribFn = fn.glXGetFBConfigAttribFn; |
+ fn.glXGetFBConfigAttribFn = Debug_glXGetFBConfigAttrib; |
+ } |
+ if (!debug_fn.glXGetFBConfigFromVisualSGIXFn) { |
+ debug_fn.glXGetFBConfigFromVisualSGIXFn = fn.glXGetFBConfigFromVisualSGIXFn; |
+ fn.glXGetFBConfigFromVisualSGIXFn = Debug_glXGetFBConfigFromVisualSGIX; |
+ } |
+ if (!debug_fn.glXGetFBConfigsFn) { |
+ debug_fn.glXGetFBConfigsFn = fn.glXGetFBConfigsFn; |
+ fn.glXGetFBConfigsFn = Debug_glXGetFBConfigs; |
+ } |
+ if (!debug_fn.glXGetMscRateOMLFn) { |
+ debug_fn.glXGetMscRateOMLFn = fn.glXGetMscRateOMLFn; |
+ fn.glXGetMscRateOMLFn = Debug_glXGetMscRateOML; |
+ } |
+ if (!debug_fn.glXGetSelectedEventFn) { |
+ debug_fn.glXGetSelectedEventFn = fn.glXGetSelectedEventFn; |
+ fn.glXGetSelectedEventFn = Debug_glXGetSelectedEvent; |
+ } |
+ if (!debug_fn.glXGetSyncValuesOMLFn) { |
+ debug_fn.glXGetSyncValuesOMLFn = fn.glXGetSyncValuesOMLFn; |
+ fn.glXGetSyncValuesOMLFn = Debug_glXGetSyncValuesOML; |
+ } |
+ if (!debug_fn.glXGetVisualFromFBConfigFn) { |
+ debug_fn.glXGetVisualFromFBConfigFn = fn.glXGetVisualFromFBConfigFn; |
+ fn.glXGetVisualFromFBConfigFn = Debug_glXGetVisualFromFBConfig; |
+ } |
+ if (!debug_fn.glXIsDirectFn) { |
+ debug_fn.glXIsDirectFn = fn.glXIsDirectFn; |
+ fn.glXIsDirectFn = Debug_glXIsDirect; |
+ } |
+ if (!debug_fn.glXMakeContextCurrentFn) { |
+ debug_fn.glXMakeContextCurrentFn = fn.glXMakeContextCurrentFn; |
+ fn.glXMakeContextCurrentFn = Debug_glXMakeContextCurrent; |
+ } |
+ if (!debug_fn.glXMakeCurrentFn) { |
+ debug_fn.glXMakeCurrentFn = fn.glXMakeCurrentFn; |
+ fn.glXMakeCurrentFn = Debug_glXMakeCurrent; |
+ } |
+ if (!debug_fn.glXQueryContextFn) { |
+ debug_fn.glXQueryContextFn = fn.glXQueryContextFn; |
+ fn.glXQueryContextFn = Debug_glXQueryContext; |
+ } |
+ if (!debug_fn.glXQueryDrawableFn) { |
+ debug_fn.glXQueryDrawableFn = fn.glXQueryDrawableFn; |
+ fn.glXQueryDrawableFn = Debug_glXQueryDrawable; |
+ } |
+ if (!debug_fn.glXQueryExtensionFn) { |
+ debug_fn.glXQueryExtensionFn = fn.glXQueryExtensionFn; |
+ fn.glXQueryExtensionFn = Debug_glXQueryExtension; |
+ } |
+ if (!debug_fn.glXQueryExtensionsStringFn) { |
+ debug_fn.glXQueryExtensionsStringFn = fn.glXQueryExtensionsStringFn; |
+ fn.glXQueryExtensionsStringFn = Debug_glXQueryExtensionsString; |
+ } |
+ if (!debug_fn.glXQueryServerStringFn) { |
+ debug_fn.glXQueryServerStringFn = fn.glXQueryServerStringFn; |
+ fn.glXQueryServerStringFn = Debug_glXQueryServerString; |
+ } |
+ if (!debug_fn.glXQueryVersionFn) { |
+ debug_fn.glXQueryVersionFn = fn.glXQueryVersionFn; |
+ fn.glXQueryVersionFn = Debug_glXQueryVersion; |
+ } |
+ if (!debug_fn.glXReleaseTexImageEXTFn) { |
+ debug_fn.glXReleaseTexImageEXTFn = fn.glXReleaseTexImageEXTFn; |
+ fn.glXReleaseTexImageEXTFn = Debug_glXReleaseTexImageEXT; |
+ } |
+ if (!debug_fn.glXSelectEventFn) { |
+ debug_fn.glXSelectEventFn = fn.glXSelectEventFn; |
+ fn.glXSelectEventFn = Debug_glXSelectEvent; |
+ } |
+ if (!debug_fn.glXSwapBuffersFn) { |
+ debug_fn.glXSwapBuffersFn = fn.glXSwapBuffersFn; |
+ fn.glXSwapBuffersFn = Debug_glXSwapBuffers; |
+ } |
+ if (!debug_fn.glXSwapIntervalEXTFn) { |
+ debug_fn.glXSwapIntervalEXTFn = fn.glXSwapIntervalEXTFn; |
+ fn.glXSwapIntervalEXTFn = Debug_glXSwapIntervalEXT; |
+ } |
+ if (!debug_fn.glXSwapIntervalMESAFn) { |
+ debug_fn.glXSwapIntervalMESAFn = fn.glXSwapIntervalMESAFn; |
+ fn.glXSwapIntervalMESAFn = Debug_glXSwapIntervalMESA; |
+ } |
+ if (!debug_fn.glXUseXFontFn) { |
+ debug_fn.glXUseXFontFn = fn.glXUseXFontFn; |
+ fn.glXUseXFontFn = Debug_glXUseXFont; |
+ } |
+ if (!debug_fn.glXWaitGLFn) { |
+ debug_fn.glXWaitGLFn = fn.glXWaitGLFn; |
+ fn.glXWaitGLFn = Debug_glXWaitGL; |
+ } |
+ if (!debug_fn.glXWaitVideoSyncSGIFn) { |
+ debug_fn.glXWaitVideoSyncSGIFn = fn.glXWaitVideoSyncSGIFn; |
+ fn.glXWaitVideoSyncSGIFn = Debug_glXWaitVideoSyncSGI; |
+ } |
+ if (!debug_fn.glXWaitXFn) { |
+ debug_fn.glXWaitXFn = fn.glXWaitXFn; |
+ fn.glXWaitXFn = Debug_glXWaitX; |
+ } |
+ g_debugBindingsInitialized = true; |
+} |
+ |
+void DriverGLX::ClearBindings() { |
+ memset(this, 0, sizeof(*this)); |
+} |
+ |
+void GLXApiBase::glXBindTexImageEXTFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int buffer, |
+ int* attribList) { |
+ driver_->fn.glXBindTexImageEXTFn(dpy, drawable, buffer, attribList); |
+} |
+ |
+GLXFBConfig* GLXApiBase::glXChooseFBConfigFn(Display* dpy, |
+ int screen, |
+ const int* attribList, |
+ int* nitems) { |
+ return driver_->fn.glXChooseFBConfigFn(dpy, screen, attribList, nitems); |
+} |
+ |
+XVisualInfo* GLXApiBase::glXChooseVisualFn(Display* dpy, |
+ int screen, |
+ int* attribList) { |
+ return driver_->fn.glXChooseVisualFn(dpy, screen, attribList); |
+} |
+ |
+void GLXApiBase::glXCopyContextFn(Display* dpy, |
+ GLXContext src, |
+ GLXContext dst, |
+ unsigned long mask) { |
+ driver_->fn.glXCopyContextFn(dpy, src, dst, mask); |
+} |
+ |
+void GLXApiBase::glXCopySubBufferMESAFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int x, |
+ int y, |
+ int width, |
+ int height) { |
+ driver_->fn.glXCopySubBufferMESAFn(dpy, drawable, x, y, width, height); |
+} |
+ |
+GLXContext GLXApiBase::glXCreateContextFn(Display* dpy, |
+ XVisualInfo* vis, |
+ GLXContext shareList, |
+ int direct) { |
+ return driver_->fn.glXCreateContextFn(dpy, vis, shareList, direct); |
+} |
+ |
+GLXContext GLXApiBase::glXCreateContextAttribsARBFn(Display* dpy, |
+ GLXFBConfig config, |
+ GLXContext share_context, |
+ int direct, |
+ const int* attrib_list) { |
+ return driver_->fn.glXCreateContextAttribsARBFn(dpy, config, share_context, |
+ direct, attrib_list); |
+} |
+ |
+GLXPixmap GLXApiBase::glXCreateGLXPixmapFn(Display* dpy, |
+ XVisualInfo* visual, |
+ Pixmap pixmap) { |
+ return driver_->fn.glXCreateGLXPixmapFn(dpy, visual, pixmap); |
+} |
+ |
+GLXContext GLXApiBase::glXCreateNewContextFn(Display* dpy, |
+ GLXFBConfig config, |
+ int renderType, |
+ GLXContext shareList, |
+ int direct) { |
+ return driver_->fn.glXCreateNewContextFn(dpy, config, renderType, shareList, |
+ direct); |
+} |
+ |
+GLXPbuffer GLXApiBase::glXCreatePbufferFn(Display* dpy, |
+ GLXFBConfig config, |
+ const int* attribList) { |
+ return driver_->fn.glXCreatePbufferFn(dpy, config, attribList); |
+} |
+ |
+GLXPixmap GLXApiBase::glXCreatePixmapFn(Display* dpy, |
+ GLXFBConfig config, |
+ Pixmap pixmap, |
+ const int* attribList) { |
+ return driver_->fn.glXCreatePixmapFn(dpy, config, pixmap, attribList); |
+} |
+ |
+GLXWindow GLXApiBase::glXCreateWindowFn(Display* dpy, |
+ GLXFBConfig config, |
+ Window win, |
+ const int* attribList) { |
+ return driver_->fn.glXCreateWindowFn(dpy, config, win, attribList); |
+} |
+ |
+void GLXApiBase::glXDestroyContextFn(Display* dpy, GLXContext ctx) { |
+ driver_->fn.glXDestroyContextFn(dpy, ctx); |
+} |
+ |
+void GLXApiBase::glXDestroyGLXPixmapFn(Display* dpy, GLXPixmap pixmap) { |
+ driver_->fn.glXDestroyGLXPixmapFn(dpy, pixmap); |
+} |
+ |
+void GLXApiBase::glXDestroyPbufferFn(Display* dpy, GLXPbuffer pbuf) { |
+ driver_->fn.glXDestroyPbufferFn(dpy, pbuf); |
+} |
+ |
+void GLXApiBase::glXDestroyPixmapFn(Display* dpy, GLXPixmap pixmap) { |
+ driver_->fn.glXDestroyPixmapFn(dpy, pixmap); |
+} |
+ |
+void GLXApiBase::glXDestroyWindowFn(Display* dpy, GLXWindow window) { |
+ driver_->fn.glXDestroyWindowFn(dpy, window); |
+} |
+ |
+const char* GLXApiBase::glXGetClientStringFn(Display* dpy, int name) { |
+ return driver_->fn.glXGetClientStringFn(dpy, name); |
+} |
+ |
+int GLXApiBase::glXGetConfigFn(Display* dpy, |
+ XVisualInfo* visual, |
+ int attrib, |
+ int* value) { |
+ return driver_->fn.glXGetConfigFn(dpy, visual, attrib, value); |
+} |
+ |
+GLXContext GLXApiBase::glXGetCurrentContextFn(void) { |
+ return driver_->fn.glXGetCurrentContextFn(); |
+} |
+ |
+Display* GLXApiBase::glXGetCurrentDisplayFn(void) { |
+ return driver_->fn.glXGetCurrentDisplayFn(); |
+} |
+ |
+GLXDrawable GLXApiBase::glXGetCurrentDrawableFn(void) { |
+ return driver_->fn.glXGetCurrentDrawableFn(); |
+} |
+ |
+GLXDrawable GLXApiBase::glXGetCurrentReadDrawableFn(void) { |
+ return driver_->fn.glXGetCurrentReadDrawableFn(); |
+} |
+ |
+int GLXApiBase::glXGetFBConfigAttribFn(Display* dpy, |
+ GLXFBConfig config, |
+ int attribute, |
+ int* value) { |
+ return driver_->fn.glXGetFBConfigAttribFn(dpy, config, attribute, value); |
+} |
+ |
+GLXFBConfig GLXApiBase::glXGetFBConfigFromVisualSGIXFn( |
+ Display* dpy, |
+ XVisualInfo* visualInfo) { |
+ return driver_->fn.glXGetFBConfigFromVisualSGIXFn(dpy, visualInfo); |
+} |
+ |
+GLXFBConfig* GLXApiBase::glXGetFBConfigsFn(Display* dpy, |
+ int screen, |
+ int* nelements) { |
+ return driver_->fn.glXGetFBConfigsFn(dpy, screen, nelements); |
+} |
+ |
+bool GLXApiBase::glXGetMscRateOMLFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int32* numerator, |
+ int32* denominator) { |
+ return driver_->fn.glXGetMscRateOMLFn(dpy, drawable, numerator, denominator); |
+} |
+ |
+void GLXApiBase::glXGetSelectedEventFn(Display* dpy, |
+ GLXDrawable drawable, |
+ unsigned long* mask) { |
+ driver_->fn.glXGetSelectedEventFn(dpy, drawable, mask); |
+} |
+ |
+bool GLXApiBase::glXGetSyncValuesOMLFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int64* ust, |
+ int64* msc, |
+ int64* sbc) { |
+ return driver_->fn.glXGetSyncValuesOMLFn(dpy, drawable, ust, msc, sbc); |
+} |
+ |
+XVisualInfo* GLXApiBase::glXGetVisualFromFBConfigFn(Display* dpy, |
+ GLXFBConfig config) { |
+ return driver_->fn.glXGetVisualFromFBConfigFn(dpy, config); |
+} |
+ |
+int GLXApiBase::glXIsDirectFn(Display* dpy, GLXContext ctx) { |
+ return driver_->fn.glXIsDirectFn(dpy, ctx); |
+} |
+ |
+int GLXApiBase::glXMakeContextCurrentFn(Display* dpy, |
+ GLXDrawable draw, |
+ GLXDrawable read, |
+ GLXContext ctx) { |
+ return driver_->fn.glXMakeContextCurrentFn(dpy, draw, read, ctx); |
+} |
+ |
+int GLXApiBase::glXMakeCurrentFn(Display* dpy, |
+ GLXDrawable drawable, |
+ GLXContext ctx) { |
+ return driver_->fn.glXMakeCurrentFn(dpy, drawable, ctx); |
+} |
+ |
+int GLXApiBase::glXQueryContextFn(Display* dpy, |
+ GLXContext ctx, |
+ int attribute, |
+ int* value) { |
+ return driver_->fn.glXQueryContextFn(dpy, ctx, attribute, value); |
+} |
+ |
+void GLXApiBase::glXQueryDrawableFn(Display* dpy, |
+ GLXDrawable draw, |
+ int attribute, |
+ unsigned int* value) { |
+ driver_->fn.glXQueryDrawableFn(dpy, draw, attribute, value); |
+} |
+ |
+int GLXApiBase::glXQueryExtensionFn(Display* dpy, int* errorb, int* event) { |
+ return driver_->fn.glXQueryExtensionFn(dpy, errorb, event); |
+} |
+ |
+const char* GLXApiBase::glXQueryExtensionsStringFn(Display* dpy, int screen) { |
+ return driver_->fn.glXQueryExtensionsStringFn(dpy, screen); |
+} |
+ |
+const char* GLXApiBase::glXQueryServerStringFn(Display* dpy, |
+ int screen, |
+ int name) { |
+ return driver_->fn.glXQueryServerStringFn(dpy, screen, name); |
+} |
+ |
+int GLXApiBase::glXQueryVersionFn(Display* dpy, int* maj, int* min) { |
+ return driver_->fn.glXQueryVersionFn(dpy, maj, min); |
+} |
+ |
+void GLXApiBase::glXReleaseTexImageEXTFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int buffer) { |
+ driver_->fn.glXReleaseTexImageEXTFn(dpy, drawable, buffer); |
+} |
+ |
+void GLXApiBase::glXSelectEventFn(Display* dpy, |
+ GLXDrawable drawable, |
+ unsigned long mask) { |
+ driver_->fn.glXSelectEventFn(dpy, drawable, mask); |
+} |
+ |
+void GLXApiBase::glXSwapBuffersFn(Display* dpy, GLXDrawable drawable) { |
+ driver_->fn.glXSwapBuffersFn(dpy, drawable); |
+} |
+ |
+void GLXApiBase::glXSwapIntervalEXTFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int interval) { |
+ driver_->fn.glXSwapIntervalEXTFn(dpy, drawable, interval); |
+} |
+ |
+void GLXApiBase::glXSwapIntervalMESAFn(unsigned int interval) { |
+ driver_->fn.glXSwapIntervalMESAFn(interval); |
+} |
+ |
+void GLXApiBase::glXUseXFontFn(Font font, int first, int count, int list) { |
+ driver_->fn.glXUseXFontFn(font, first, count, list); |
+} |
+ |
+void GLXApiBase::glXWaitGLFn(void) { |
+ driver_->fn.glXWaitGLFn(); |
+} |
+ |
+int GLXApiBase::glXWaitVideoSyncSGIFn(int divisor, |
+ int remainder, |
+ unsigned int* count) { |
+ return driver_->fn.glXWaitVideoSyncSGIFn(divisor, remainder, count); |
+} |
+ |
+void GLXApiBase::glXWaitXFn(void) { |
+ driver_->fn.glXWaitXFn(); |
+} |
+ |
+void TraceGLXApi::glXBindTexImageEXTFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int buffer, |
+ int* attribList) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXBindTexImageEXT") |
+ glx_api_->glXBindTexImageEXTFn(dpy, drawable, buffer, attribList); |
+} |
+ |
+GLXFBConfig* TraceGLXApi::glXChooseFBConfigFn(Display* dpy, |
+ int screen, |
+ const int* attribList, |
+ int* nitems) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXChooseFBConfig") |
+ return glx_api_->glXChooseFBConfigFn(dpy, screen, attribList, nitems); |
+} |
+ |
+XVisualInfo* TraceGLXApi::glXChooseVisualFn(Display* dpy, |
+ int screen, |
+ int* attribList) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXChooseVisual") |
+ return glx_api_->glXChooseVisualFn(dpy, screen, attribList); |
+} |
+ |
+void TraceGLXApi::glXCopyContextFn(Display* dpy, |
+ GLXContext src, |
+ GLXContext dst, |
+ unsigned long mask) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXCopyContext") |
+ glx_api_->glXCopyContextFn(dpy, src, dst, mask); |
+} |
+ |
+void TraceGLXApi::glXCopySubBufferMESAFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int x, |
+ int y, |
+ int width, |
+ int height) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXCopySubBufferMESA") |
+ glx_api_->glXCopySubBufferMESAFn(dpy, drawable, x, y, width, height); |
+} |
+ |
+GLXContext TraceGLXApi::glXCreateContextFn(Display* dpy, |
+ XVisualInfo* vis, |
+ GLXContext shareList, |
+ int direct) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXCreateContext") |
+ return glx_api_->glXCreateContextFn(dpy, vis, shareList, direct); |
+} |
+ |
+GLXContext TraceGLXApi::glXCreateContextAttribsARBFn(Display* dpy, |
+ GLXFBConfig config, |
+ GLXContext share_context, |
+ int direct, |
+ const int* attrib_list) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXCreateContextAttribsARB") |
+ return glx_api_->glXCreateContextAttribsARBFn(dpy, config, share_context, |
+ direct, attrib_list); |
+} |
+ |
+GLXPixmap TraceGLXApi::glXCreateGLXPixmapFn(Display* dpy, |
+ XVisualInfo* visual, |
+ Pixmap pixmap) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXCreateGLXPixmap") |
+ return glx_api_->glXCreateGLXPixmapFn(dpy, visual, pixmap); |
+} |
+ |
+GLXContext TraceGLXApi::glXCreateNewContextFn(Display* dpy, |
+ GLXFBConfig config, |
+ int renderType, |
+ GLXContext shareList, |
+ int direct) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXCreateNewContext") |
+ return glx_api_->glXCreateNewContextFn(dpy, config, renderType, shareList, |
+ direct); |
+} |
+ |
+GLXPbuffer TraceGLXApi::glXCreatePbufferFn(Display* dpy, |
+ GLXFBConfig config, |
+ const int* attribList) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXCreatePbuffer") |
+ return glx_api_->glXCreatePbufferFn(dpy, config, attribList); |
+} |
+ |
+GLXPixmap TraceGLXApi::glXCreatePixmapFn(Display* dpy, |
+ GLXFBConfig config, |
+ Pixmap pixmap, |
+ const int* attribList) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXCreatePixmap") |
+ return glx_api_->glXCreatePixmapFn(dpy, config, pixmap, attribList); |
+} |
+ |
+GLXWindow TraceGLXApi::glXCreateWindowFn(Display* dpy, |
+ GLXFBConfig config, |
+ Window win, |
+ const int* attribList) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXCreateWindow") |
+ return glx_api_->glXCreateWindowFn(dpy, config, win, attribList); |
+} |
+ |
+void TraceGLXApi::glXDestroyContextFn(Display* dpy, GLXContext ctx) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXDestroyContext") |
+ glx_api_->glXDestroyContextFn(dpy, ctx); |
+} |
+ |
+void TraceGLXApi::glXDestroyGLXPixmapFn(Display* dpy, GLXPixmap pixmap) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXDestroyGLXPixmap") |
+ glx_api_->glXDestroyGLXPixmapFn(dpy, pixmap); |
+} |
+ |
+void TraceGLXApi::glXDestroyPbufferFn(Display* dpy, GLXPbuffer pbuf) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXDestroyPbuffer") |
+ glx_api_->glXDestroyPbufferFn(dpy, pbuf); |
+} |
+ |
+void TraceGLXApi::glXDestroyPixmapFn(Display* dpy, GLXPixmap pixmap) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXDestroyPixmap") |
+ glx_api_->glXDestroyPixmapFn(dpy, pixmap); |
+} |
+ |
+void TraceGLXApi::glXDestroyWindowFn(Display* dpy, GLXWindow window) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXDestroyWindow") |
+ glx_api_->glXDestroyWindowFn(dpy, window); |
+} |
+ |
+const char* TraceGLXApi::glXGetClientStringFn(Display* dpy, int name) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetClientString") |
+ return glx_api_->glXGetClientStringFn(dpy, name); |
+} |
+ |
+int TraceGLXApi::glXGetConfigFn(Display* dpy, |
+ XVisualInfo* visual, |
+ int attrib, |
+ int* value) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetConfig") |
+ return glx_api_->glXGetConfigFn(dpy, visual, attrib, value); |
+} |
+ |
+GLXContext TraceGLXApi::glXGetCurrentContextFn(void) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetCurrentContext") |
+ return glx_api_->glXGetCurrentContextFn(); |
+} |
+ |
+Display* TraceGLXApi::glXGetCurrentDisplayFn(void) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetCurrentDisplay") |
+ return glx_api_->glXGetCurrentDisplayFn(); |
+} |
+ |
+GLXDrawable TraceGLXApi::glXGetCurrentDrawableFn(void) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetCurrentDrawable") |
+ return glx_api_->glXGetCurrentDrawableFn(); |
+} |
+ |
+GLXDrawable TraceGLXApi::glXGetCurrentReadDrawableFn(void) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetCurrentReadDrawable") |
+ return glx_api_->glXGetCurrentReadDrawableFn(); |
+} |
+ |
+int TraceGLXApi::glXGetFBConfigAttribFn(Display* dpy, |
+ GLXFBConfig config, |
+ int attribute, |
+ int* value) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetFBConfigAttrib") |
+ return glx_api_->glXGetFBConfigAttribFn(dpy, config, attribute, value); |
+} |
+ |
+GLXFBConfig TraceGLXApi::glXGetFBConfigFromVisualSGIXFn( |
+ Display* dpy, |
+ XVisualInfo* visualInfo) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", |
+ "TraceGLAPI::glXGetFBConfigFromVisualSGIX") |
+ return glx_api_->glXGetFBConfigFromVisualSGIXFn(dpy, visualInfo); |
+} |
+ |
+GLXFBConfig* TraceGLXApi::glXGetFBConfigsFn(Display* dpy, |
+ int screen, |
+ int* nelements) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetFBConfigs") |
+ return glx_api_->glXGetFBConfigsFn(dpy, screen, nelements); |
+} |
+ |
+bool TraceGLXApi::glXGetMscRateOMLFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int32* numerator, |
+ int32* denominator) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetMscRateOML") |
+ return glx_api_->glXGetMscRateOMLFn(dpy, drawable, numerator, denominator); |
+} |
+ |
+void TraceGLXApi::glXGetSelectedEventFn(Display* dpy, |
+ GLXDrawable drawable, |
+ unsigned long* mask) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetSelectedEvent") |
+ glx_api_->glXGetSelectedEventFn(dpy, drawable, mask); |
+} |
+ |
+bool TraceGLXApi::glXGetSyncValuesOMLFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int64* ust, |
+ int64* msc, |
+ int64* sbc) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetSyncValuesOML") |
+ return glx_api_->glXGetSyncValuesOMLFn(dpy, drawable, ust, msc, sbc); |
+} |
+ |
+XVisualInfo* TraceGLXApi::glXGetVisualFromFBConfigFn(Display* dpy, |
+ GLXFBConfig config) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetVisualFromFBConfig") |
+ return glx_api_->glXGetVisualFromFBConfigFn(dpy, config); |
+} |
+ |
+int TraceGLXApi::glXIsDirectFn(Display* dpy, GLXContext ctx) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXIsDirect") |
+ return glx_api_->glXIsDirectFn(dpy, ctx); |
+} |
+ |
+int TraceGLXApi::glXMakeContextCurrentFn(Display* dpy, |
+ GLXDrawable draw, |
+ GLXDrawable read, |
+ GLXContext ctx) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXMakeContextCurrent") |
+ return glx_api_->glXMakeContextCurrentFn(dpy, draw, read, ctx); |
+} |
+ |
+int TraceGLXApi::glXMakeCurrentFn(Display* dpy, |
+ GLXDrawable drawable, |
+ GLXContext ctx) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXMakeCurrent") |
+ return glx_api_->glXMakeCurrentFn(dpy, drawable, ctx); |
+} |
+ |
+int TraceGLXApi::glXQueryContextFn(Display* dpy, |
+ GLXContext ctx, |
+ int attribute, |
+ int* value) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXQueryContext") |
+ return glx_api_->glXQueryContextFn(dpy, ctx, attribute, value); |
+} |
+ |
+void TraceGLXApi::glXQueryDrawableFn(Display* dpy, |
+ GLXDrawable draw, |
+ int attribute, |
+ unsigned int* value) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXQueryDrawable") |
+ glx_api_->glXQueryDrawableFn(dpy, draw, attribute, value); |
+} |
+ |
+int TraceGLXApi::glXQueryExtensionFn(Display* dpy, int* errorb, int* event) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXQueryExtension") |
+ return glx_api_->glXQueryExtensionFn(dpy, errorb, event); |
+} |
+ |
+const char* TraceGLXApi::glXQueryExtensionsStringFn(Display* dpy, int screen) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXQueryExtensionsString") |
+ return glx_api_->glXQueryExtensionsStringFn(dpy, screen); |
+} |
+ |
+const char* TraceGLXApi::glXQueryServerStringFn(Display* dpy, |
+ int screen, |
+ int name) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXQueryServerString") |
+ return glx_api_->glXQueryServerStringFn(dpy, screen, name); |
+} |
+ |
+int TraceGLXApi::glXQueryVersionFn(Display* dpy, int* maj, int* min) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXQueryVersion") |
+ return glx_api_->glXQueryVersionFn(dpy, maj, min); |
+} |
+ |
+void TraceGLXApi::glXReleaseTexImageEXTFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int buffer) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXReleaseTexImageEXT") |
+ glx_api_->glXReleaseTexImageEXTFn(dpy, drawable, buffer); |
+} |
+ |
+void TraceGLXApi::glXSelectEventFn(Display* dpy, |
+ GLXDrawable drawable, |
+ unsigned long mask) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXSelectEvent") |
+ glx_api_->glXSelectEventFn(dpy, drawable, mask); |
+} |
+ |
+void TraceGLXApi::glXSwapBuffersFn(Display* dpy, GLXDrawable drawable) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXSwapBuffers") |
+ glx_api_->glXSwapBuffersFn(dpy, drawable); |
+} |
+ |
+void TraceGLXApi::glXSwapIntervalEXTFn(Display* dpy, |
+ GLXDrawable drawable, |
+ int interval) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXSwapIntervalEXT") |
+ glx_api_->glXSwapIntervalEXTFn(dpy, drawable, interval); |
+} |
+ |
+void TraceGLXApi::glXSwapIntervalMESAFn(unsigned int interval) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXSwapIntervalMESA") |
+ glx_api_->glXSwapIntervalMESAFn(interval); |
+} |
+ |
+void TraceGLXApi::glXUseXFontFn(Font font, int first, int count, int list) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXUseXFont") |
+ glx_api_->glXUseXFontFn(font, first, count, list); |
+} |
+ |
+void TraceGLXApi::glXWaitGLFn(void) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXWaitGL") |
+ glx_api_->glXWaitGLFn(); |
+} |
+ |
+int TraceGLXApi::glXWaitVideoSyncSGIFn(int divisor, |
+ int remainder, |
+ unsigned int* count) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXWaitVideoSyncSGI") |
+ return glx_api_->glXWaitVideoSyncSGIFn(divisor, remainder, count); |
+} |
+ |
+void TraceGLXApi::glXWaitXFn(void) { |
+ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXWaitX") |
+ glx_api_->glXWaitXFn(); |
+} |
+ |
+} // namespace gfx |