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

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

Issue 2183403002: cc: Move data to LayerTree from LayerTreeHost. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@layer_tree_change
Patch Set: .. Created 4 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
« no previous file with comments | « cc/trees/layer_tree.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 <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
121 // a CompositorMessageToImpl::CloseImpl message from the server. This ensures 121 // a CompositorMessageToImpl::CloseImpl message from the server. This ensures
122 // that the client will not send any compositor messages once the 122 // that the client will not send any compositor messages once the
123 // LayerTreeHost on the server is destroyed. 123 // LayerTreeHost on the server is destroyed.
124 static std::unique_ptr<LayerTreeHost> CreateRemoteClient( 124 static std::unique_ptr<LayerTreeHost> CreateRemoteClient(
125 RemoteProtoChannel* remote_proto_channel, 125 RemoteProtoChannel* remote_proto_channel,
126 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner, 126 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner,
127 InitParams* params); 127 InitParams* params);
128 128
129 virtual ~LayerTreeHost(); 129 virtual ~LayerTreeHost();
130 130
131 // LayerTreeHost interface to Proxy. 131 // LayerTreeHost interface to Proxy --------------------------------
132 void WillBeginMainFrame(); 132 void WillBeginMainFrame();
133 void DidBeginMainFrame(); 133 void DidBeginMainFrame();
134 void BeginMainFrame(const BeginFrameArgs& args); 134 void BeginMainFrame(const BeginFrameArgs& args);
135 void BeginMainFrameNotExpectedSoon(); 135 void BeginMainFrameNotExpectedSoon();
136 void AnimateLayers(base::TimeTicks monotonic_frame_begin_time); 136 void AnimateLayers(base::TimeTicks monotonic_frame_begin_time);
137 void DidStopFlinging(); 137 void DidStopFlinging();
138 void RequestMainFrameUpdate(); 138 void RequestMainFrameUpdate();
139 void FinishCommitOnImplThread(LayerTreeHostImpl* host_impl); 139 void FinishCommitOnImplThread(LayerTreeHostImpl* host_impl);
140 void WillCommit(); 140 void WillCommit();
141 void CommitComplete(); 141 void CommitComplete();
142 void SetOutputSurface(std::unique_ptr<OutputSurface> output_surface); 142 void SetOutputSurface(std::unique_ptr<OutputSurface> output_surface);
143 std::unique_ptr<OutputSurface> ReleaseOutputSurface(); 143 std::unique_ptr<OutputSurface> ReleaseOutputSurface();
144 void RequestNewOutputSurface(); 144 void RequestNewOutputSurface();
145 void DidInitializeOutputSurface(); 145 void DidInitializeOutputSurface();
146 void DidFailToInitializeOutputSurface(); 146 void DidFailToInitializeOutputSurface();
147 virtual std::unique_ptr<LayerTreeHostImpl> CreateLayerTreeHostImpl( 147 virtual std::unique_ptr<LayerTreeHostImpl> CreateLayerTreeHostImpl(
148 LayerTreeHostImplClient* client); 148 LayerTreeHostImplClient* client);
149 void DidLoseOutputSurface(); 149 void DidLoseOutputSurface();
150 bool output_surface_lost() const { return output_surface_lost_; } 150 bool output_surface_lost() const { return output_surface_lost_; }
151 void DidCommitAndDrawFrame() { client_->DidCommitAndDrawFrame(); } 151 void DidCommitAndDrawFrame() { client_->DidCommitAndDrawFrame(); }
152 void DidCompleteSwapBuffers() { client_->DidCompleteSwapBuffers(); } 152 void DidCompleteSwapBuffers() { client_->DidCompleteSwapBuffers(); }
153 bool UpdateLayers(); 153 bool UpdateLayers();
154 154
155 // Called when the compositor completed page scale animation.
156 void DidCompletePageScaleAnimation();
157 // -----------------------------------------------------------------
enne (OOO) 2016/08/08 17:52:16 If this is supposed to be part of the above block,
Khushal 2016/08/08 23:21:37 Sure, will do. whatever is cleaner. :)
158
155 LayerListIterator<Layer> begin() const; 159 LayerListIterator<Layer> begin() const;
156 LayerListIterator<Layer> end() const; 160 LayerListIterator<Layer> end() const;
157 LayerListReverseIterator<Layer> rbegin(); 161 LayerListReverseIterator<Layer> rbegin();
158 LayerListReverseIterator<Layer> rend(); 162 LayerListReverseIterator<Layer> rend();
159 163
160 // Called when the compositor completed page scale animation.
161 void DidCompletePageScaleAnimation();
162
163 LayerTreeHostClient* client() { return client_; } 164 LayerTreeHostClient* client() { return client_; }
164 const base::WeakPtr<InputHandler>& GetInputHandler() { 165 const base::WeakPtr<InputHandler>& GetInputHandler() {
165 return input_handler_weak_ptr_; 166 return input_handler_weak_ptr_;
166 } 167 }
167 168
168 void NotifyInputThrottledUntilCommit(); 169 void NotifyInputThrottledUntilCommit();
169 170
170 void LayoutAndUpdateLayers(); 171 void LayoutAndUpdateLayers();
171 void Composite(base::TimeTicks frame_begin_time); 172 void Composite(base::TimeTicks frame_begin_time);
172 173
(...skipping 13 matching lines...) Expand all
186 187
187 RenderingStatsInstrumentation* rendering_stats_instrumentation() const { 188 RenderingStatsInstrumentation* rendering_stats_instrumentation() const {
188 return rendering_stats_instrumentation_.get(); 189 return rendering_stats_instrumentation_.get();
189 } 190 }
190 191
191 virtual const RendererCapabilities& GetRendererCapabilities() const; 192 virtual const RendererCapabilities& GetRendererCapabilities() const;
192 193
193 void SetNeedsAnimate(); 194 void SetNeedsAnimate();
194 virtual void SetNeedsUpdateLayers(); 195 virtual void SetNeedsUpdateLayers();
195 virtual void SetNeedsCommit(); 196 virtual void SetNeedsCommit();
196 virtual void SetNeedsFullTreeSync();
197 virtual void SetNeedsMetaInfoRecomputation(
198 bool needs_meta_info_recomputation);
199 void SetNeedsRedraw(); 197 void SetNeedsRedraw();
200 void SetNeedsRedrawRect(const gfx::Rect& damage_rect); 198 void SetNeedsRedrawRect(const gfx::Rect& damage_rect);
201 bool CommitRequested() const; 199 bool CommitRequested() const;
202 bool BeginMainFrameRequested() const; 200 bool BeginMainFrameRequested() const;
203 201
204 void SetNextCommitWaitsForActivation(); 202 void SetNextCommitWaitsForActivation();
205 203
206 void SetNextCommitForcesRedraw(); 204 void SetNextCommitForcesRedraw();
207 205
208 void SetAnimationEvents(std::unique_ptr<AnimationEvents> events); 206 void SetAnimationEvents(std::unique_ptr<AnimationEvents> events);
209 207
210 void SetRootLayer(scoped_refptr<Layer> root_layer);
211 Layer* root_layer() { return root_layer_.get(); }
212 const Layer* root_layer() const { return root_layer_.get(); }
213 const Layer* overscroll_elasticity_layer() const {
214 return overscroll_elasticity_layer_.get();
215 }
216 const Layer* page_scale_layer() const { return page_scale_layer_.get(); }
217 void RegisterViewportLayers(scoped_refptr<Layer> overscroll_elasticity_layer,
218 scoped_refptr<Layer> page_scale_layer,
219 scoped_refptr<Layer> inner_viewport_scroll_layer,
220 scoped_refptr<Layer> outer_viewport_scroll_layer);
221 Layer* inner_viewport_scroll_layer() const {
222 return inner_viewport_scroll_layer_.get();
223 }
224 Layer* outer_viewport_scroll_layer() const {
225 return outer_viewport_scroll_layer_.get();
226 }
227
228 void RegisterSelection(const LayerSelection& selection);
229
230 bool have_scroll_event_handlers() const {
231 return have_scroll_event_handlers_;
232 }
233 void SetHaveScrollEventHandlers(bool have_event_handlers);
234
235 void SetEventListenerProperties(EventListenerClass event_class,
236 EventListenerProperties event_properties);
237 EventListenerProperties event_listener_properties(
238 EventListenerClass event_class) const {
239 return event_listener_properties_[static_cast<size_t>(event_class)];
240 }
241
242 const LayerTreeSettings& settings() const { return settings_; } 208 const LayerTreeSettings& settings() const { return settings_; }
243 209
244 void SetDebugState(const LayerTreeDebugState& debug_state); 210 void SetDebugState(const LayerTreeDebugState& debug_state);
245 const LayerTreeDebugState& debug_state() const { return debug_state_; } 211 const LayerTreeDebugState& debug_state() const { return debug_state_; }
246 212
247 bool has_gpu_rasterization_trigger() const { 213 bool has_gpu_rasterization_trigger() const {
248 return has_gpu_rasterization_trigger_; 214 return has_gpu_rasterization_trigger_;
249 } 215 }
250 void SetHasGpuRasterizationTrigger(bool has_trigger); 216 void SetHasGpuRasterizationTrigger(bool has_trigger);
251 217
252 void SetViewportSize(const gfx::Size& device_viewport_size); 218 void ApplyPageScaleDeltaFromImplSide(float page_scale_delta);
253 void SetTopControlsHeight(float height, bool shrink);
254 void SetTopControlsShownRatio(float ratio);
255 219
256 gfx::Size device_viewport_size() const { return device_viewport_size_; }
257
258 void ApplyPageScaleDeltaFromImplSide(float page_scale_delta);
259 void SetPageScaleFactorAndLimits(float page_scale_factor,
260 float min_page_scale_factor,
261 float max_page_scale_factor);
262 float page_scale_factor() const { return page_scale_factor_; }
263 gfx::Vector2dF elastic_overscroll() const { return elastic_overscroll_; } 220 gfx::Vector2dF elastic_overscroll() const { return elastic_overscroll_; }
enne (OOO) 2016/08/08 17:52:16 Why isn't this part of LayerTree? It seems like it
Khushal 2016/08/08 23:21:37 Probably missed it because I didn't see this being
enne (OOO) 2016/08/09 18:21:07 https://cs.chromium.org/chromium/src/cc/trees/laye
264 221
265 SkColor background_color() const { return background_color_; }
266 void set_background_color(SkColor color) { background_color_ = color; }
267
268 void set_has_transparent_background(bool transparent) {
269 has_transparent_background_ = transparent;
270 }
271
272 void SetVisible(bool visible); 222 void SetVisible(bool visible);
273 bool visible() const { return visible_; } 223 bool visible() const { return visible_; }
274 224
275 void StartPageScaleAnimation(const gfx::Vector2d& target_offset,
276 bool use_anchor,
277 float scale,
278 base::TimeDelta duration);
279 bool HasPendingPageScaleAnimation() const;
280
281 void ApplyScrollAndScale(ScrollAndScaleSet* info); 225 void ApplyScrollAndScale(ScrollAndScaleSet* info);
282 void SetImplTransform(const gfx::Transform& transform);
283
284 void SetDeviceScaleFactor(float device_scale_factor);
285 void SetPaintedDeviceScaleFactor(float painted_device_scale_factor);
286
287 float device_scale_factor() const { return device_scale_factor_; }
288 226
289 void UpdateTopControlsState(TopControlsState constraints, 227 void UpdateTopControlsState(TopControlsState constraints,
290 TopControlsState current, 228 TopControlsState current,
291 bool animate); 229 bool animate);
292 230
293 HeadsUpDisplayLayer* hud_layer() const { return hud_layer_.get(); }
294
295 Proxy* proxy() const { return proxy_.get(); } 231 Proxy* proxy() const { return proxy_.get(); }
296 TaskRunnerProvider* task_runner_provider() const { 232 TaskRunnerProvider* task_runner_provider() const {
297 return task_runner_provider_.get(); 233 return task_runner_provider_.get();
298 } 234 }
299 AnimationHost* animation_host() const; 235 AnimationHost* animation_host() const;
300 236
301 bool has_output_surface() const { return !!current_output_surface_; } 237 bool has_output_surface() const { return !!current_output_surface_; }
302 238
303 // CreateUIResource creates a resource given a bitmap. The bitmap is 239 // CreateUIResource creates a resource given a bitmap. The bitmap is
304 // generated via an interface function, which is called when initializing the 240 // generated via an interface function, which is called when initializing the
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
336 // See swap_promise.h for how to use SwapPromise. 272 // See swap_promise.h for how to use SwapPromise.
337 void QueueSwapPromise(std::unique_ptr<SwapPromise> swap_promise); 273 void QueueSwapPromise(std::unique_ptr<SwapPromise> swap_promise);
338 274
339 void BreakSwapPromises(SwapPromise::DidNotSwapReason reason); 275 void BreakSwapPromises(SwapPromise::DidNotSwapReason reason);
340 276
341 size_t num_queued_swap_promises() const { return swap_promise_list_.size(); } 277 size_t num_queued_swap_promises() const { return swap_promise_list_.size(); }
342 278
343 void set_surface_client_id(uint32_t client_id); 279 void set_surface_client_id(uint32_t client_id);
344 SurfaceSequence CreateSurfaceSequence(); 280 SurfaceSequence CreateSurfaceSequence();
345 281
346 PropertyTrees* property_trees() { return &property_trees_; }
347 bool needs_meta_info_recomputation() {
348 return needs_meta_info_recomputation_;
349 }
350
351 void SetLayerTreeMutator(std::unique_ptr<LayerTreeMutator> mutator); 282 void SetLayerTreeMutator(std::unique_ptr<LayerTreeMutator> mutator);
352 283
353 Layer* LayerById(int id) const; 284 Layer* LayerById(int id) const;
354 285
355 Layer* LayerByElementId(ElementId element_id) const; 286 Layer* LayerByElementId(ElementId element_id) const;
356 void AddToElementMap(Layer* layer); 287 void AddToElementMap(Layer* layer);
357 void RemoveFromElementMap(Layer* layer); 288 void RemoveFromElementMap(Layer* layer);
358 289
359 // MutatorHostClient implementation. 290 // MutatorHostClient implementation.
360 bool IsElementInList(ElementId element_id, 291 bool IsElementInList(ElementId element_id,
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
417 } 348 }
418 349
419 EnginePictureCache* engine_picture_cache() const { 350 EnginePictureCache* engine_picture_cache() const {
420 return engine_picture_cache_ ? engine_picture_cache_.get() : nullptr; 351 return engine_picture_cache_ ? engine_picture_cache_.get() : nullptr;
421 } 352 }
422 353
423 ClientPictureCache* client_picture_cache() const { 354 ClientPictureCache* client_picture_cache() const {
424 return client_picture_cache_ ? client_picture_cache_.get() : nullptr; 355 return client_picture_cache_ ? client_picture_cache_.get() : nullptr;
425 } 356 }
426 357
427 LayerTree* GetLayerTree() { return &layer_tree_; } 358 LayerTree* GetLayerTree() { return layer_tree_.get(); }
428 const LayerTree* GetLayerTree() const { return &layer_tree_; } 359 const LayerTree* GetLayerTree() const { return layer_tree_.get(); }
360
361 void ResetGpuRasterizationTracking();
429 362
430 protected: 363 protected:
431 LayerTreeHost(InitParams* params, CompositorMode mode); 364 LayerTreeHost(InitParams* params, CompositorMode mode);
432 void InitializeThreaded( 365 void InitializeThreaded(
433 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner, 366 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner,
434 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner, 367 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner,
435 std::unique_ptr<BeginFrameSource> external_begin_frame_source); 368 std::unique_ptr<BeginFrameSource> external_begin_frame_source);
436 void InitializeSingleThreaded( 369 void InitializeSingleThreaded(
437 LayerTreeHostSingleThreadClient* single_thread_client, 370 LayerTreeHostSingleThreadClient* single_thread_client,
438 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner, 371 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner,
(...skipping 26 matching lines...) Expand all
465 return gpu_memory_buffer_manager_; 398 return gpu_memory_buffer_manager_;
466 } 399 }
467 TaskGraphRunner* task_graph_runner() const { return task_graph_runner_; } 400 TaskGraphRunner* task_graph_runner() const { return task_graph_runner_; }
468 401
469 MicroBenchmarkController micro_benchmark_controller_; 402 MicroBenchmarkController micro_benchmark_controller_;
470 403
471 void OnCommitForSwapPromises(); 404 void OnCommitForSwapPromises();
472 405
473 void RecordGpuRasterizationHistogram(); 406 void RecordGpuRasterizationHistogram();
474 407
408 // Layer tree that hold layers.
enne (OOO) 2016/08/08 17:52:16 I think you mean "holds", although I'm not sure th
Khushal 2016/08/08 23:21:37 Copied the comment from below. I'll remove it.
409 std::unique_ptr<LayerTree> layer_tree_;
410
475 private: 411 private:
476 friend class LayerTreeHostSerializationTest; 412 friend class LayerTreeHostSerializationTest;
477 413
478 // This is the number of consecutive frames in which we want the content to be 414 // This is the number of consecutive frames in which we want the content to be
479 // suitable for GPU rasterization before re-enabling it. 415 // suitable for GPU rasterization before re-enabling it.
480 enum { kNumFramesToConsiderBeforeGpuRasterization = 60 }; 416 enum { kNumFramesToConsiderBeforeGpuRasterization = 60 };
481 417
482 void ApplyViewportDeltas(ScrollAndScaleSet* info); 418 void ApplyViewportDeltas(ScrollAndScaleSet* info);
483 void InitializeProxy( 419 void InitializeProxy(
484 std::unique_ptr<Proxy> proxy, 420 std::unique_ptr<Proxy> proxy,
(...skipping 18 matching lines...) Expand all
503 UIResourceRequestQueue ui_resource_request_queue_; 439 UIResourceRequestQueue ui_resource_request_queue_;
504 440
505 void CalculateLCDTextMetricsCallback(Layer* layer); 441 void CalculateLCDTextMetricsCallback(Layer* layer);
506 442
507 void NotifySwapPromiseMonitorsOfSetNeedsCommit(); 443 void NotifySwapPromiseMonitorsOfSetNeedsCommit();
508 444
509 void SetPropertyTreesNeedRebuild(); 445 void SetPropertyTreesNeedRebuild();
510 446
511 const CompositorMode compositor_mode_; 447 const CompositorMode compositor_mode_;
512 448
513 bool needs_full_tree_sync_;
514 bool needs_meta_info_recomputation_;
515
516 LayerTreeHostClient* client_; 449 LayerTreeHostClient* client_;
517 std::unique_ptr<Proxy> proxy_; 450 std::unique_ptr<Proxy> proxy_;
518 std::unique_ptr<TaskRunnerProvider> task_runner_provider_; 451 std::unique_ptr<TaskRunnerProvider> task_runner_provider_;
519 452
520 int source_frame_number_; 453 int source_frame_number_;
521 std::unique_ptr<RenderingStatsInstrumentation> 454 std::unique_ptr<RenderingStatsInstrumentation>
522 rendering_stats_instrumentation_; 455 rendering_stats_instrumentation_;
523 456
524 // |current_output_surface_| can't be updated until we've successfully 457 // |current_output_surface_| can't be updated until we've successfully
525 // initialized a new output surface. |new_output_surface_| contains the 458 // initialized a new output surface. |new_output_surface_| contains the
526 // new output surface that is currently being initialized. If initialization 459 // new output surface that is currently being initialized. If initialization
527 // is successful then |new_output_surface_| replaces 460 // is successful then |new_output_surface_| replaces
528 // |current_output_surface_|. 461 // |current_output_surface_|.
529 std::unique_ptr<OutputSurface> new_output_surface_; 462 std::unique_ptr<OutputSurface> new_output_surface_;
530 std::unique_ptr<OutputSurface> current_output_surface_; 463 std::unique_ptr<OutputSurface> current_output_surface_;
531 bool output_surface_lost_; 464 bool output_surface_lost_;
532 465
533 scoped_refptr<Layer> root_layer_;
534 scoped_refptr<HeadsUpDisplayLayer> hud_layer_;
535
536 base::WeakPtr<InputHandler> input_handler_weak_ptr_; 466 base::WeakPtr<InputHandler> input_handler_weak_ptr_;
537 467
538 const LayerTreeSettings settings_; 468 const LayerTreeSettings settings_;
539 LayerTreeDebugState debug_state_; 469 LayerTreeDebugState debug_state_;
540 470
541 gfx::Size device_viewport_size_;
542 bool top_controls_shrink_blink_size_;
543 float top_controls_height_;
544 float top_controls_shown_ratio_;
545 float device_scale_factor_;
546 float painted_device_scale_factor_;
547
548 bool visible_; 471 bool visible_;
549 472
550 float page_scale_factor_;
551 float min_page_scale_factor_;
552 float max_page_scale_factor_;
553 gfx::Vector2dF elastic_overscroll_;
554 bool has_gpu_rasterization_trigger_; 473 bool has_gpu_rasterization_trigger_;
555 bool content_is_suitable_for_gpu_rasterization_; 474 bool content_is_suitable_for_gpu_rasterization_;
556 bool gpu_rasterization_histogram_recorded_; 475 bool gpu_rasterization_histogram_recorded_;
557 476
558 SkColor background_color_; 477 gfx::Vector2dF elastic_overscroll_;
559 bool has_transparent_background_;
560
561 bool have_scroll_event_handlers_;
562 EventListenerProperties event_listener_properties_[static_cast<size_t>(
563 EventListenerClass::kNumClasses)];
564
565 std::unique_ptr<PendingPageScaleAnimation> pending_page_scale_animation_;
566 478
567 // If set, then page scale animation has completed, but the client hasn't been 479 // If set, then page scale animation has completed, but the client hasn't been
568 // notified about it yet. 480 // notified about it yet.
569 bool did_complete_scale_animation_; 481 bool did_complete_scale_animation_;
570 482
571 int id_; 483 int id_;
572 bool next_commit_forces_redraw_; 484 bool next_commit_forces_redraw_;
573 485
574 scoped_refptr<Layer> overscroll_elasticity_layer_;
575 scoped_refptr<Layer> page_scale_layer_;
576 scoped_refptr<Layer> inner_viewport_scroll_layer_;
577 scoped_refptr<Layer> outer_viewport_scroll_layer_;
578
579 LayerSelection selection_;
580
581 SharedBitmapManager* shared_bitmap_manager_; 486 SharedBitmapManager* shared_bitmap_manager_;
582 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager_; 487 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager_;
583 TaskGraphRunner* task_graph_runner_; 488 TaskGraphRunner* task_graph_runner_;
584 489
585 ImageSerializationProcessor* image_serialization_processor_; 490 ImageSerializationProcessor* image_serialization_processor_;
586 std::unique_ptr<EnginePictureCache> engine_picture_cache_; 491 std::unique_ptr<EnginePictureCache> engine_picture_cache_;
587 std::unique_ptr<ClientPictureCache> client_picture_cache_; 492 std::unique_ptr<ClientPictureCache> client_picture_cache_;
588 493
589 std::vector<std::unique_ptr<SwapPromise>> swap_promise_list_; 494 std::vector<std::unique_ptr<SwapPromise>> swap_promise_list_;
590 std::set<SwapPromiseMonitor*> swap_promise_monitor_; 495 std::set<SwapPromiseMonitor*> swap_promise_monitor_;
591 496
592 PropertyTrees property_trees_;
593
594 using ElementLayersMap = std::unordered_map<ElementId, Layer*, ElementIdHash>; 497 using ElementLayersMap = std::unordered_map<ElementId, Layer*, ElementIdHash>;
595 ElementLayersMap element_layers_map_; 498 ElementLayersMap element_layers_map_;
596 499
597 uint32_t surface_client_id_; 500 uint32_t surface_client_id_;
598 uint32_t next_surface_sequence_; 501 uint32_t next_surface_sequence_;
599 uint32_t num_consecutive_frames_suitable_for_gpu_ = 0; 502 uint32_t num_consecutive_frames_suitable_for_gpu_ = 0;
600 503
601 // Layer tree that hold layers.
602 LayerTree layer_tree_;
603
604 DISALLOW_COPY_AND_ASSIGN(LayerTreeHost); 504 DISALLOW_COPY_AND_ASSIGN(LayerTreeHost);
605 }; 505 };
606 506
607 } // namespace cc 507 } // namespace cc
608 508
609 #endif // CC_TREES_LAYER_TREE_HOST_H_ 509 #endif // CC_TREES_LAYER_TREE_HOST_H_
OLDNEW
« no previous file with comments | « cc/trees/layer_tree.cc ('k') | cc/trees/layer_tree_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698