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

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

Issue 2571263002: cc: Remove map lookup from RenderSurfaceImpl::EffectTreeIndex (Closed)
Patch Set: Fix post-rebase unit test failure Created 3 years, 11 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_impl.cc ('k') | cc/trees/property_tree.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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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_PROPERTY_TREE_H_ 5 #ifndef CC_TREES_PROPERTY_TREE_H_
6 #define CC_TREES_PROPERTY_TREE_H_ 6 #define CC_TREES_PROPERTY_TREE_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <memory> 10 #include <memory>
(...skipping 12 matching lines...) Expand all
23 namespace base { 23 namespace base {
24 namespace trace_event { 24 namespace trace_event {
25 class TracedValue; 25 class TracedValue;
26 } 26 }
27 } 27 }
28 28
29 namespace cc { 29 namespace cc {
30 30
31 class CopyOutputRequest; 31 class CopyOutputRequest;
32 class LayerTreeImpl; 32 class LayerTreeImpl;
33 class RenderSurfaceImpl;
33 class ScrollState; 34 class ScrollState;
34 struct ClipNode; 35 struct ClipNode;
35 struct EffectNode; 36 struct EffectNode;
36 struct ScrollAndScaleSet; 37 struct ScrollAndScaleSet;
37 struct ScrollNode; 38 struct ScrollNode;
38 struct TransformNode; 39 struct TransformNode;
39 struct TransformCachedNodeData; 40 struct TransformCachedNodeData;
40 41
41 typedef SyncedProperty<AdditionGroup<gfx::ScrollOffset>> SyncedScrollOffset; 42 typedef SyncedProperty<AdditionGroup<gfx::ScrollOffset>> SyncedScrollOffset;
42 43
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after
324 325
325 int ClosestAncestorWithCopyRequest(int id) const; 326 int ClosestAncestorWithCopyRequest(int id) const;
326 327
327 void AddMaskLayerId(int id); 328 void AddMaskLayerId(int id);
328 const std::vector<int>& mask_layer_ids() const { return mask_layer_ids_; } 329 const std::vector<int>& mask_layer_ids() const { return mask_layer_ids_; }
329 330
330 bool ContributesToDrawnSurface(int id); 331 bool ContributesToDrawnSurface(int id);
331 332
332 void ResetChangeTracking(); 333 void ResetChangeTracking();
333 334
335 // A list of pairs of stable id and render surface, sorted by stable id.
336 using StableIdRenderSurfaceList =
337 std::vector<std::pair<int, RenderSurfaceImpl*>>;
338 StableIdRenderSurfaceList CreateStableIdRenderSurfaceList() const;
339 void UpdateRenderSurfaceEffectIds(
340 const StableIdRenderSurfaceList& stable_id_render_surface_list,
341 LayerTreeImpl* layer_tree_impl);
342
334 private: 343 private:
335 void UpdateOpacities(EffectNode* node, EffectNode* parent_node); 344 void UpdateOpacities(EffectNode* node, EffectNode* parent_node);
336 void UpdateIsDrawn(EffectNode* node, EffectNode* parent_node); 345 void UpdateIsDrawn(EffectNode* node, EffectNode* parent_node);
337 void UpdateBackfaceVisibility(EffectNode* node, EffectNode* parent_node); 346 void UpdateBackfaceVisibility(EffectNode* node, EffectNode* parent_node);
338 347
339 // Stores copy requests, keyed by node id. 348 // Stores copy requests, keyed by node id.
340 std::unordered_multimap<int, std::unique_ptr<CopyOutputRequest>> 349 std::unordered_multimap<int, std::unique_ptr<CopyOutputRequest>>
341 copy_requests_; 350 copy_requests_;
342 351
343 // Unsorted list of all mask layer ids that effect nodes refer to. 352 // Unsorted list of all mask layer ids that effect nodes refer to.
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after
604 DrawTransforms& GetDrawTransforms(int transform_id, int effect_id) const; 613 DrawTransforms& GetDrawTransforms(int transform_id, int effect_id) const;
605 DrawTransformData& FetchDrawTransformsDataFromCache(int transform_id, 614 DrawTransformData& FetchDrawTransformsDataFromCache(int transform_id,
606 int effect_id) const; 615 int effect_id) const;
607 616
608 PropertyTreesCachedData cached_data_; 617 PropertyTreesCachedData cached_data_;
609 }; 618 };
610 619
611 } // namespace cc 620 } // namespace cc
612 621
613 #endif // CC_TREES_PROPERTY_TREE_H_ 622 #endif // CC_TREES_PROPERTY_TREE_H_
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_impl.cc ('k') | cc/trees/property_tree.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698