| 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 WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_ | 5 #ifndef WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_ |
| 6 #define WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_ | 6 #define WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_ |
| 7 | 7 |
| 8 #include <list> | 8 #include <list> |
| 9 #include <set> | 9 #include <set> |
| 10 | 10 |
| 11 #include "base/compiler_specific.h" |
| 11 #include "base/hash_tables.h" | 12 #include "base/hash_tables.h" |
| 12 #include "base/memory/ref_counted.h" | 13 #include "base/memory/ref_counted.h" |
| 13 #include "third_party/angle/include/GLSLANG/ShaderLang.h" | 14 #include "third_party/angle/include/GLSLANG/ShaderLang.h" |
| 14 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebGraphicsC
ontext3D.h" | 15 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebGraphicsC
ontext3D.h" |
| 15 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebString.h" | 16 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebString.h" |
| 16 #include "ui/gfx/native_widget_types.h" | 17 #include "ui/gfx/native_widget_types.h" |
| 18 #include "webkit/gpu/webkit_gpu_export.h" |
| 17 | 19 |
| 18 #if !defined(OS_MACOSX) | 20 #if !defined(OS_MACOSX) |
| 19 #define FLIP_FRAMEBUFFER_VERTICALLY | 21 #define FLIP_FRAMEBUFFER_VERTICALLY |
| 20 #endif | 22 #endif |
| 21 namespace gfx { | 23 namespace gfx { |
| 22 class GLContext; | 24 class GLContext; |
| 23 class GLSurface; | 25 class GLSurface; |
| 24 class GLShareGroup; | 26 class GLShareGroup; |
| 25 } | 27 } |
| 26 | 28 |
| (...skipping 17 matching lines...) Expand all Loading... |
| 44 using WebKit::WebGraphicsContext3D; | 46 using WebKit::WebGraphicsContext3D; |
| 45 | 47 |
| 46 namespace webkit { | 48 namespace webkit { |
| 47 namespace gpu { | 49 namespace gpu { |
| 48 | 50 |
| 49 // The default implementation of WebGL. In Chromium, using this class | 51 // The default implementation of WebGL. In Chromium, using this class |
| 50 // requires the sandbox to be disabled, which is strongly discouraged. | 52 // requires the sandbox to be disabled, which is strongly discouraged. |
| 51 // It is provided for support of test_shell and any Chromium ports | 53 // It is provided for support of test_shell and any Chromium ports |
| 52 // where an in-renderer WebGL implementation would be helpful. | 54 // where an in-renderer WebGL implementation would be helpful. |
| 53 | 55 |
| 54 class WebGraphicsContext3DInProcessImpl : public WebGraphicsContext3D { | 56 class WEBKIT_GPU_EXPORT WebGraphicsContext3DInProcessImpl : |
| 57 public NON_EXPORTED_BASE(WebGraphicsContext3D) { |
| 55 public: | 58 public: |
| 56 // Creates a WebGraphicsContext3DInProcessImpl for a given window. If window | 59 // Creates a WebGraphicsContext3DInProcessImpl for a given window. If window |
| 57 // is gfx::kNullPluginWindow, then it creates an offscreen context. | 60 // is gfx::kNullPluginWindow, then it creates an offscreen context. |
| 58 // share_group is the group this context shares namespaces with. It's only | 61 // share_group is the group this context shares namespaces with. It's only |
| 59 // used for window-bound countexts. | 62 // used for window-bound countexts. |
| 60 WebGraphicsContext3DInProcessImpl(gfx::GLSurface* surface, | 63 WebGraphicsContext3DInProcessImpl(gfx::GLSurface* surface, |
| 61 gfx::GLContext* context, | 64 gfx::GLContext* context, |
| 62 bool render_directly_to_webview); | 65 bool render_directly_to_webview); |
| 63 virtual ~WebGraphicsContext3DInProcessImpl(); | 66 virtual ~WebGraphicsContext3DInProcessImpl(); |
| 64 static WebGraphicsContext3DInProcessImpl* CreateForWebView( | 67 static WebGraphicsContext3DInProcessImpl* CreateForWebView( |
| (...skipping 503 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 568 ShaderSourceMap shader_source_map_; | 571 ShaderSourceMap shader_source_map_; |
| 569 | 572 |
| 570 ShHandle fragment_compiler_; | 573 ShHandle fragment_compiler_; |
| 571 ShHandle vertex_compiler_; | 574 ShHandle vertex_compiler_; |
| 572 }; | 575 }; |
| 573 | 576 |
| 574 } // namespace gpu | 577 } // namespace gpu |
| 575 } // namespace webkit | 578 } // namespace webkit |
| 576 | 579 |
| 577 #endif // WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_ | 580 #endif // WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_ |
| OLD | NEW |