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

Side by Side Diff: webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h

Issue 455083002: Add memory limits struct to in-process context (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: x64 fix attempt 2 Created 6 years, 4 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 | Annotate | Revision Log
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 WEBKIT_COMMON_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_ 5 #ifndef WEBKIT_COMMON_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_
6 #define WEBKIT_COMMON_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_ 6 #define WEBKIT_COMMON_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
(...skipping 18 matching lines...) Expand all
29 namespace gpu { 29 namespace gpu {
30 class GLInProcessContext; 30 class GLInProcessContext;
31 } 31 }
32 32
33 namespace webkit { 33 namespace webkit {
34 namespace gpu { 34 namespace gpu {
35 35
36 class WEBKIT_GPU_EXPORT WebGraphicsContext3DInProcessCommandBufferImpl 36 class WEBKIT_GPU_EXPORT WebGraphicsContext3DInProcessCommandBufferImpl
37 : public WebGraphicsContext3DImpl { 37 : public WebGraphicsContext3DImpl {
38 public: 38 public:
39 enum MappedMemoryReclaimLimit {
40 kNoLimit = 0,
41 };
42
39 static scoped_ptr<WebGraphicsContext3DInProcessCommandBufferImpl> 43 static scoped_ptr<WebGraphicsContext3DInProcessCommandBufferImpl>
40 CreateViewContext( 44 CreateViewContext(
41 const blink::WebGraphicsContext3D::Attributes& attributes, 45 const blink::WebGraphicsContext3D::Attributes& attributes,
42 bool lose_context_when_out_of_memory, 46 bool lose_context_when_out_of_memory,
43 gfx::AcceleratedWidget window); 47 gfx::AcceleratedWidget window);
44 48
45 static scoped_ptr<WebGraphicsContext3DInProcessCommandBufferImpl> 49 static scoped_ptr<WebGraphicsContext3DInProcessCommandBufferImpl>
46 CreateOffscreenContext( 50 CreateOffscreenContext(
47 const blink::WebGraphicsContext3D::Attributes& attributes, 51 const blink::WebGraphicsContext3D::Attributes& attributes,
48 bool lose_context_when_out_of_memory); 52 bool lose_context_when_out_of_memory);
49 53
50 static scoped_ptr<WebGraphicsContext3DInProcessCommandBufferImpl> 54 static scoped_ptr<WebGraphicsContext3DInProcessCommandBufferImpl>
51 WrapContext( 55 WrapContext(
52 scoped_ptr< ::gpu::GLInProcessContext> context, 56 scoped_ptr< ::gpu::GLInProcessContext> context,
53 const blink::WebGraphicsContext3D::Attributes& attributes); 57 const blink::WebGraphicsContext3D::Attributes& attributes);
54 58
55 virtual ~WebGraphicsContext3DInProcessCommandBufferImpl(); 59 virtual ~WebGraphicsContext3DInProcessCommandBufferImpl();
56 60
61 size_t GetMappedMemoryLimit();
62
57 //---------------------------------------------------------------------- 63 //----------------------------------------------------------------------
58 // WebGraphicsContext3D methods 64 // WebGraphicsContext3D methods
59 virtual bool makeContextCurrent(); 65 virtual bool makeContextCurrent();
60 66
61 virtual bool isContextLost(); 67 virtual bool isContextLost();
62 68
63 virtual WGC3Denum getGraphicsResetStatusARB(); 69 virtual WGC3Denum getGraphicsResetStatusARB();
64 70
65 ::gpu::ContextSupport* GetContextSupport(); 71 ::gpu::ContextSupport* GetContextSupport();
66 72
(...skipping 28 matching lines...) Expand all
95 // The context we use for OpenGL rendering. 101 // The context we use for OpenGL rendering.
96 scoped_ptr< ::gpu::GLInProcessContext> context_; 102 scoped_ptr< ::gpu::GLInProcessContext> context_;
97 // The GLES2Implementation we use for OpenGL rendering. 103 // The GLES2Implementation we use for OpenGL rendering.
98 ::gpu::gles2::GLES2Implementation* real_gl_; 104 ::gpu::gles2::GLES2Implementation* real_gl_;
99 }; 105 };
100 106
101 } // namespace gpu 107 } // namespace gpu
102 } // namespace webkit 108 } // namespace webkit
103 109
104 #endif // WEBKIT_COMMON_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL _H_ 110 #endif // WEBKIT_COMMON_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL _H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698