OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #ifndef UI_GL_GL_GLX_API_IMPLEMENTATION_H_ | 5 #ifndef UI_GL_GL_GLX_API_IMPLEMENTATION_H_ |
6 #define UI_GL_GL_GLX_API_IMPLEMENTATION_H_ | 6 #define UI_GL_GL_GLX_API_IMPLEMENTATION_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 void InitializeWithCommandLine(DriverGLX* driver, | 46 void InitializeWithCommandLine(DriverGLX* driver, |
47 base::CommandLine* command_line); | 47 base::CommandLine* command_line); |
48 | 48 |
49 const char* glXQueryExtensionsStringFn(Display* dpy, int screen) override; | 49 const char* glXQueryExtensionsStringFn(Display* dpy, int screen) override; |
50 private: | 50 private: |
51 | 51 |
52 std::vector<std::string> disabled_exts_; | 52 std::vector<std::string> disabled_exts_; |
53 std::string filtered_exts_; | 53 std::string filtered_exts_; |
54 }; | 54 }; |
55 | 55 |
| 56 // Logs debug information for every GLX call. |
| 57 class GL_EXPORT DebugGLXApi : public GLXApi { |
| 58 public: |
| 59 DebugGLXApi(GLXApi* glx_api); |
| 60 ~DebugGLXApi() override; |
| 61 |
| 62 // Include the auto-generated part of this class. We split this because |
| 63 // it means we can easily edit the non-auto generated parts right here in |
| 64 // this file instead of having to edit some template or the code generator. |
| 65 #include "gl_bindings_api_autogen_glx.h" |
| 66 |
| 67 private: |
| 68 GLXApi* glx_api_; |
| 69 }; |
| 70 |
56 // Inserts a TRACE for every GLX call. | 71 // Inserts a TRACE for every GLX call. |
57 class GL_EXPORT TraceGLXApi : public GLXApi { | 72 class GL_EXPORT TraceGLXApi : public GLXApi { |
58 public: | 73 public: |
59 TraceGLXApi(GLXApi* glx_api) : glx_api_(glx_api) { } | 74 TraceGLXApi(GLXApi* glx_api) : glx_api_(glx_api) { } |
60 ~TraceGLXApi() override; | 75 ~TraceGLXApi() override; |
61 | 76 |
62 // Include the auto-generated part of this class. We split this because | 77 // Include the auto-generated part of this class. We split this because |
63 // it means we can easily edit the non-auto generated parts right here in | 78 // it means we can easily edit the non-auto generated parts right here in |
64 // this file instead of having to edit some template or the code generator. | 79 // this file instead of having to edit some template or the code generator. |
65 #include "gl_bindings_api_autogen_glx.h" | 80 #include "gl_bindings_api_autogen_glx.h" |
66 | 81 |
67 private: | 82 private: |
68 GLXApi* glx_api_; | 83 GLXApi* glx_api_; |
69 }; | 84 }; |
70 | 85 |
71 } // namespace gl | 86 } // namespace gl |
72 | 87 |
73 #endif // UI_GL_GL_GLX_API_IMPLEMENTATION_H_ | 88 #endif // UI_GL_GL_GLX_API_IMPLEMENTATION_H_ |
74 | 89 |
75 | 90 |
76 | 91 |
OLD | NEW |