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

Side by Side Diff: ui/gl/gl_osmesa_api_implementation.h

Issue 2629633003: Refactor GL bindings so there is no global GLApi or DriverGL. (Closed)
Patch Set: rebase Created 3 years, 10 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
« no previous file with comments | « ui/gl/gl_implementation.cc ('k') | ui/gl/gl_osmesa_api_implementation.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_OSMESA_API_IMPLEMENTATION_H_ 5 #ifndef UI_GL_GL_OSMESA_API_IMPLEMENTATION_H_
6 #define UI_GL_GL_OSMESA_API_IMPLEMENTATION_H_ 6 #define UI_GL_GL_OSMESA_API_IMPLEMENTATION_H_
7 7
8 #include "base/compiler_specific.h" 8 #include "base/compiler_specific.h"
9 #include "ui/gl/gl_bindings.h" 9 #include "ui/gl/gl_bindings.h"
10 #include "ui/gl/gl_export.h" 10 #include "ui/gl/gl_export.h"
(...skipping 19 matching lines...) Expand all
30 DriverOSMESA* driver_; 30 DriverOSMESA* driver_;
31 }; 31 };
32 32
33 class GL_EXPORT RealOSMESAApi : public OSMESAApiBase { 33 class GL_EXPORT RealOSMESAApi : public OSMESAApiBase {
34 public: 34 public:
35 RealOSMESAApi(); 35 RealOSMESAApi();
36 ~RealOSMESAApi() override; 36 ~RealOSMESAApi() override;
37 void Initialize(DriverOSMESA* driver); 37 void Initialize(DriverOSMESA* driver);
38 }; 38 };
39 39
40 // Logs debug information for every OSMESA call.
41 class GL_EXPORT DebugOSMESAApi : public OSMESAApi {
42 public:
43 DebugOSMESAApi(OSMESAApi* osmesa_api);
44 ~DebugOSMESAApi() override;
45
46 // Include the auto-generated part of this class. We split this because
47 // it means we can easily edit the non-auto generated parts right here in
48 // this file instead of having to edit some template or the code generator.
49 #include "gl_bindings_api_autogen_osmesa.h"
50
51 private:
52 OSMESAApi* osmesa_api_;
53 };
54
40 // Inserts a TRACE for every OSMESA call. 55 // Inserts a TRACE for every OSMESA call.
41 class GL_EXPORT TraceOSMESAApi : public OSMESAApi { 56 class GL_EXPORT TraceOSMESAApi : public OSMESAApi {
42 public: 57 public:
43 TraceOSMESAApi(OSMESAApi* osmesa_api) : osmesa_api_(osmesa_api) { } 58 TraceOSMESAApi(OSMESAApi* osmesa_api) : osmesa_api_(osmesa_api) { }
44 ~TraceOSMESAApi() override; 59 ~TraceOSMESAApi() override;
45 60
46 // Include the auto-generated part of this class. We split this because 61 // Include the auto-generated part of this class. We split this because
47 // it means we can easily edit the non-auto generated parts right here in 62 // it means we can easily edit the non-auto generated parts right here in
48 // this file instead of having to edit some template or the code generator. 63 // this file instead of having to edit some template or the code generator.
49 #include "gl_bindings_api_autogen_osmesa.h" 64 #include "gl_bindings_api_autogen_osmesa.h"
50 65
51 private: 66 private:
52 OSMESAApi* osmesa_api_; 67 OSMESAApi* osmesa_api_;
53 }; 68 };
54 69
55 } // namespace gl 70 } // namespace gl
56 71
57 #endif // UI_GL_GL_OSMESA_API_IMPLEMENTATION_H_ 72 #endif // UI_GL_GL_OSMESA_API_IMPLEMENTATION_H_
58 73
59 74
60 75
OLDNEW
« no previous file with comments | « ui/gl/gl_implementation.cc ('k') | ui/gl/gl_osmesa_api_implementation.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698