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

Side by Side Diff: cc/trees/layer_tree_host.h

Issue 251343002: Remove offscreen compositor contexts. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rm-offscreencontext: include Created 6 years, 8 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 | « cc/test/pixel_test.cc ('k') | cc/trees/layer_tree_host.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 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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 CC_TREES_LAYER_TREE_HOST_H_ 5 #ifndef CC_TREES_LAYER_TREE_HOST_H_
6 #define CC_TREES_LAYER_TREE_HOST_H_ 6 #define CC_TREES_LAYER_TREE_HOST_H_
7 7
8 #include <limits> 8 #include <limits>
9 #include <list> 9 #include <list>
10 #include <set> 10 #include <set>
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 class TopControlsManager; 58 class TopControlsManager;
59 class UIResourceRequest; 59 class UIResourceRequest;
60 struct RenderingStats; 60 struct RenderingStats;
61 struct ScrollAndScaleSet; 61 struct ScrollAndScaleSet;
62 62
63 // Provides information on an Impl's rendering capabilities back to the 63 // Provides information on an Impl's rendering capabilities back to the
64 // LayerTreeHost. 64 // LayerTreeHost.
65 struct CC_EXPORT RendererCapabilities { 65 struct CC_EXPORT RendererCapabilities {
66 RendererCapabilities(ResourceFormat best_texture_format, 66 RendererCapabilities(ResourceFormat best_texture_format,
67 bool allow_partial_texture_updates, 67 bool allow_partial_texture_updates,
68 bool using_offscreen_context3d,
69 int max_texture_size, 68 int max_texture_size,
70 bool using_shared_memory_resources); 69 bool using_shared_memory_resources);
71 70
72 RendererCapabilities(); 71 RendererCapabilities();
73 ~RendererCapabilities(); 72 ~RendererCapabilities();
74 73
75 // Duplicate any modification to this list to RendererCapabilitiesImpl. 74 // Duplicate any modification to this list to RendererCapabilitiesImpl.
76 ResourceFormat best_texture_format; 75 ResourceFormat best_texture_format;
77 bool allow_partial_texture_updates; 76 bool allow_partial_texture_updates;
78 bool using_offscreen_context3d;
79 int max_texture_size; 77 int max_texture_size;
80 bool using_shared_memory_resources; 78 bool using_shared_memory_resources;
81 }; 79 };
82 80
83 class CC_EXPORT LayerTreeHost { 81 class CC_EXPORT LayerTreeHost {
84 public: 82 public:
85 // The SharedBitmapManager will be used on the compositor thread. 83 // The SharedBitmapManager will be used on the compositor thread.
86 static scoped_ptr<LayerTreeHost> CreateThreaded( 84 static scoped_ptr<LayerTreeHost> CreateThreaded(
87 LayerTreeHostClient* client, 85 LayerTreeHostClient* client,
88 SharedBitmapManager* manager, 86 SharedBitmapManager* manager,
89 const LayerTreeSettings& settings, 87 const LayerTreeSettings& settings,
90 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner); 88 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner);
91 89
92 static scoped_ptr<LayerTreeHost> CreateSingleThreaded( 90 static scoped_ptr<LayerTreeHost> CreateSingleThreaded(
93 LayerTreeHostClient* client, 91 LayerTreeHostClient* client,
94 LayerTreeHostSingleThreadClient* single_thread_client, 92 LayerTreeHostSingleThreadClient* single_thread_client,
95 SharedBitmapManager* manager, 93 SharedBitmapManager* manager,
96 const LayerTreeSettings& settings); 94 const LayerTreeSettings& settings);
97 virtual ~LayerTreeHost(); 95 virtual ~LayerTreeHost();
98 96
99 void SetLayerTreeHostClientReady(); 97 void SetLayerTreeHostClientReady();
100 98
101 void set_needs_filter_context() { needs_filter_context_ = true; }
102 bool needs_offscreen_context() const {
103 return needs_filter_context_;
104 }
105
106 // LayerTreeHost interface to Proxy. 99 // LayerTreeHost interface to Proxy.
107 void WillBeginMainFrame() { 100 void WillBeginMainFrame() {
108 client_->WillBeginMainFrame(source_frame_number_); 101 client_->WillBeginMainFrame(source_frame_number_);
109 } 102 }
110 void DidBeginMainFrame(); 103 void DidBeginMainFrame();
111 void UpdateClientAnimations(base::TimeTicks monotonic_frame_begin_time); 104 void UpdateClientAnimations(base::TimeTicks monotonic_frame_begin_time);
112 void AnimateLayers(base::TimeTicks monotonic_frame_begin_time); 105 void AnimateLayers(base::TimeTicks monotonic_frame_begin_time);
113 void DidStopFlinging(); 106 void DidStopFlinging();
114 void Layout(); 107 void Layout();
115 void BeginCommitOnImplThread(LayerTreeHostImpl* host_impl); 108 void BeginCommitOnImplThread(LayerTreeHostImpl* host_impl);
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 352
360 typedef std::list<UIResourceRequest> UIResourceRequestQueue; 353 typedef std::list<UIResourceRequest> UIResourceRequestQueue;
361 UIResourceRequestQueue ui_resource_request_queue_; 354 UIResourceRequestQueue ui_resource_request_queue_;
362 355
363 void CalculateLCDTextMetricsCallback(Layer* layer); 356 void CalculateLCDTextMetricsCallback(Layer* layer);
364 357
365 void NotifySwapPromiseMonitorsOfSetNeedsCommit(); 358 void NotifySwapPromiseMonitorsOfSetNeedsCommit();
366 359
367 bool animating_; 360 bool animating_;
368 bool needs_full_tree_sync_; 361 bool needs_full_tree_sync_;
369 bool needs_filter_context_;
370 362
371 base::CancelableClosure prepaint_callback_; 363 base::CancelableClosure prepaint_callback_;
372 364
373 LayerTreeHostClient* client_; 365 LayerTreeHostClient* client_;
374 scoped_ptr<Proxy> proxy_; 366 scoped_ptr<Proxy> proxy_;
375 367
376 int source_frame_number_; 368 int source_frame_number_;
377 scoped_ptr<RenderingStatsInstrumentation> rendering_stats_instrumentation_; 369 scoped_ptr<RenderingStatsInstrumentation> rendering_stats_instrumentation_;
378 370
379 bool output_surface_can_be_initialized_; 371 bool output_surface_can_be_initialized_;
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
453 445
454 ScopedPtrVector<SwapPromise> swap_promise_list_; 446 ScopedPtrVector<SwapPromise> swap_promise_list_;
455 std::set<SwapPromiseMonitor*> swap_promise_monitor_; 447 std::set<SwapPromiseMonitor*> swap_promise_monitor_;
456 448
457 DISALLOW_COPY_AND_ASSIGN(LayerTreeHost); 449 DISALLOW_COPY_AND_ASSIGN(LayerTreeHost);
458 }; 450 };
459 451
460 } // namespace cc 452 } // namespace cc
461 453
462 #endif // CC_TREES_LAYER_TREE_HOST_H_ 454 #endif // CC_TREES_LAYER_TREE_HOST_H_
OLDNEW
« no previous file with comments | « cc/test/pixel_test.cc ('k') | cc/trees/layer_tree_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698