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

Side by Side Diff: ui/compositor/compositor.h

Issue 20185002: ContextProvider in OutputSurface (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: contextprovider: don't access Context3d() in OutputSurface contructors, it's not bound yet Created 7 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
« no previous file with comments | « content/renderer/render_widget.cc ('k') | ui/compositor/compositor.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_COMPOSITOR_COMPOSITOR_H_ 5 #ifndef UI_COMPOSITOR_COMPOSITOR_H_
6 #define UI_COMPOSITOR_COMPOSITOR_H_ 6 #define UI_COMPOSITOR_COMPOSITOR_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/containers/hash_tables.h" 10 #include "base/containers/hash_tables.h"
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 class Size; 46 class Size;
47 } 47 }
48 48
49 namespace WebKit { 49 namespace WebKit {
50 class WebGraphicsContext3D; 50 class WebGraphicsContext3D;
51 } 51 }
52 52
53 namespace webkit { 53 namespace webkit {
54 namespace gpu { 54 namespace gpu {
55 class ContextProviderInProcess; 55 class ContextProviderInProcess;
56 class WebGraphicsContext3DInProcessCommandBufferImpl;
56 } 57 }
57 } 58 }
58 59
59 namespace ui { 60 namespace ui {
60 61
61 class Compositor; 62 class Compositor;
62 class CompositorObserver; 63 class CompositorObserver;
63 class ContextProviderFromContextFactory; 64 class ContextProviderFromContextFactory;
64 class Layer; 65 class Layer;
65 class PostedSwapQueue; 66 class PostedSwapQueue;
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 virtual scoped_refptr<cc::ContextProvider> 127 virtual scoped_refptr<cc::ContextProvider>
127 OffscreenContextProviderForMainThread() OVERRIDE; 128 OffscreenContextProviderForMainThread() OVERRIDE;
128 virtual scoped_refptr<cc::ContextProvider> 129 virtual scoped_refptr<cc::ContextProvider>
129 OffscreenContextProviderForCompositorThread() OVERRIDE; 130 OffscreenContextProviderForCompositorThread() OVERRIDE;
130 virtual void RemoveCompositor(Compositor* compositor) OVERRIDE; 131 virtual void RemoveCompositor(Compositor* compositor) OVERRIDE;
131 virtual bool DoesCreateTestContexts() OVERRIDE; 132 virtual bool DoesCreateTestContexts() OVERRIDE;
132 133
133 bool Initialize(); 134 bool Initialize();
134 135
135 private: 136 private:
137 static scoped_ptr<webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl>
138 CreateViewContext(Compositor* compositor);
139
136 scoped_refptr<webkit::gpu::ContextProviderInProcess> 140 scoped_refptr<webkit::gpu::ContextProviderInProcess>
137 offscreen_contexts_main_thread_; 141 offscreen_contexts_main_thread_;
138 scoped_refptr<webkit::gpu::ContextProviderInProcess> 142 scoped_refptr<webkit::gpu::ContextProviderInProcess>
139 offscreen_contexts_compositor_thread_; 143 offscreen_contexts_compositor_thread_;
140 144
141 DISALLOW_COPY_AND_ASSIGN(DefaultContextFactory); 145 DISALLOW_COPY_AND_ASSIGN(DefaultContextFactory);
142 }; 146 };
143 147
144 // The factory that creates test contexts. 148 // The factory that creates test contexts.
145 class COMPOSITOR_EXPORT TestContextFactory : public ContextFactory { 149 class COMPOSITOR_EXPORT TestContextFactory : public ContextFactory {
(...skipping 302 matching lines...) Expand 10 before | Expand all | Expand 10 after
448 bool disable_schedule_composite_; 452 bool disable_schedule_composite_;
449 453
450 CompositorLock* compositor_lock_; 454 CompositorLock* compositor_lock_;
451 455
452 DISALLOW_COPY_AND_ASSIGN(Compositor); 456 DISALLOW_COPY_AND_ASSIGN(Compositor);
453 }; 457 };
454 458
455 } // namespace ui 459 } // namespace ui
456 460
457 #endif // UI_COMPOSITOR_COMPOSITOR_H_ 461 #endif // UI_COMPOSITOR_COMPOSITOR_H_
OLDNEW
« no previous file with comments | « content/renderer/render_widget.cc ('k') | ui/compositor/compositor.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698