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

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

Issue 845393002: cc: Create ProxyBeginFrameSource (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased Created 5 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
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 #include "cc/trees/layer_tree_host.h" 5 #include "cc/trees/layer_tree_host.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <stack> 8 #include <stack>
9 #include <string> 9 #include <string>
10 10
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 return layer_tree_host.Pass(); 85 return layer_tree_host.Pass();
86 } 86 }
87 87
88 scoped_ptr<LayerTreeHost> LayerTreeHost::CreateSingleThreaded( 88 scoped_ptr<LayerTreeHost> LayerTreeHost::CreateSingleThreaded(
89 LayerTreeHostClient* client, 89 LayerTreeHostClient* client,
90 LayerTreeHostSingleThreadClient* single_thread_client, 90 LayerTreeHostSingleThreadClient* single_thread_client,
91 SharedBitmapManager* shared_bitmap_manager, 91 SharedBitmapManager* shared_bitmap_manager,
92 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager, 92 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager,
93 const LayerTreeSettings& settings, 93 const LayerTreeSettings& settings,
94 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner, 94 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner,
95 scoped_ptr<BeginFrameSource> external_begin_frame_source) { 95 scoped_ptr<BeginFrameSource> external_begin_frame_source,
96 ProxyBeginFrameSource* proxy_begin_frame_source) {
96 scoped_ptr<LayerTreeHost> layer_tree_host(new LayerTreeHost( 97 scoped_ptr<LayerTreeHost> layer_tree_host(new LayerTreeHost(
97 client, shared_bitmap_manager, gpu_memory_buffer_manager, settings)); 98 client, shared_bitmap_manager, gpu_memory_buffer_manager, settings));
98 layer_tree_host->InitializeSingleThreaded(single_thread_client, 99 layer_tree_host->InitializeSingleThreaded(single_thread_client,
99 main_task_runner, 100 main_task_runner,
100 external_begin_frame_source.Pass()); 101 external_begin_frame_source.Pass(),
102 proxy_begin_frame_source);
101 return layer_tree_host.Pass(); 103 return layer_tree_host.Pass();
102 } 104 }
103 105
104 LayerTreeHost::LayerTreeHost( 106 LayerTreeHost::LayerTreeHost(
105 LayerTreeHostClient* client, 107 LayerTreeHostClient* client,
106 SharedBitmapManager* shared_bitmap_manager, 108 SharedBitmapManager* shared_bitmap_manager,
107 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager, 109 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager,
108 const LayerTreeSettings& settings) 110 const LayerTreeSettings& settings)
109 : micro_benchmark_controller_(this), 111 : micro_benchmark_controller_(this),
110 next_ui_resource_id_(1), 112 next_ui_resource_id_(1),
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 scoped_ptr<BeginFrameSource> external_begin_frame_source) { 153 scoped_ptr<BeginFrameSource> external_begin_frame_source) {
152 InitializeProxy(ThreadProxy::Create(this, 154 InitializeProxy(ThreadProxy::Create(this,
153 main_task_runner, 155 main_task_runner,
154 impl_task_runner, 156 impl_task_runner,
155 external_begin_frame_source.Pass())); 157 external_begin_frame_source.Pass()));
156 } 158 }
157 159
158 void LayerTreeHost::InitializeSingleThreaded( 160 void LayerTreeHost::InitializeSingleThreaded(
159 LayerTreeHostSingleThreadClient* single_thread_client, 161 LayerTreeHostSingleThreadClient* single_thread_client,
160 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner, 162 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner,
161 scoped_ptr<BeginFrameSource> external_begin_frame_source) { 163 scoped_ptr<BeginFrameSource> external_begin_frame_source,
164 ProxyBeginFrameSource* proxy_begin_frame_source) {
162 InitializeProxy( 165 InitializeProxy(
163 SingleThreadProxy::Create(this, 166 SingleThreadProxy::Create(this,
164 single_thread_client, 167 single_thread_client,
165 main_task_runner, 168 main_task_runner,
166 external_begin_frame_source.Pass())); 169 external_begin_frame_source.Pass(),
170 proxy_begin_frame_source));
167 } 171 }
168 172
169 void LayerTreeHost::InitializeForTesting(scoped_ptr<Proxy> proxy_for_testing) { 173 void LayerTreeHost::InitializeForTesting(scoped_ptr<Proxy> proxy_for_testing) {
170 InitializeProxy(proxy_for_testing.Pass()); 174 InitializeProxy(proxy_for_testing.Pass());
171 } 175 }
172 176
173 void LayerTreeHost::InitializeProxy(scoped_ptr<Proxy> proxy) { 177 void LayerTreeHost::InitializeProxy(scoped_ptr<Proxy> proxy) {
174 TRACE_EVENT0("cc", "LayerTreeHost::InitializeForReal"); 178 TRACE_EVENT0("cc", "LayerTreeHost::InitializeForReal");
175 179
176 proxy_ = proxy.Pass(); 180 proxy_ = proxy.Pass();
(...skipping 1184 matching lines...) Expand 10 before | Expand all | Expand 10 after
1361 } 1365 }
1362 1366
1363 void LayerTreeHost::set_surface_id_namespace(uint32_t id_namespace) { 1367 void LayerTreeHost::set_surface_id_namespace(uint32_t id_namespace) {
1364 surface_id_namespace_ = id_namespace; 1368 surface_id_namespace_ = id_namespace;
1365 } 1369 }
1366 1370
1367 SurfaceSequence LayerTreeHost::CreateSurfaceSequence() { 1371 SurfaceSequence LayerTreeHost::CreateSurfaceSequence() {
1368 return SurfaceSequence(surface_id_namespace_, next_surface_sequence_++); 1372 return SurfaceSequence(surface_id_namespace_, next_surface_sequence_++);
1369 } 1373 }
1370 1374
1371 void LayerTreeHost::SetChildrenNeedBeginFrames(
1372 bool children_need_begin_frames) const {
1373 proxy_->SetChildrenNeedBeginFrames(children_need_begin_frames);
1374 }
1375
1376 void LayerTreeHost::SendBeginFramesToChildren(
1377 const BeginFrameArgs& args) const {
1378 client_->SendBeginFramesToChildren(args);
1379 }
1380
1381 } // namespace cc 1375 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698