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

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

Issue 2655233006: cc : Clean up cc clip tree (Closed)
Patch Set: rebase Created 3 years, 9 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_settings.h ('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 564 matching lines...) Expand 10 before | Expand all | Expand 10 after
575 DrawTransforms transforms; 575 DrawTransforms transforms;
576 576
577 // TODO(sunxd): Move screen space transforms here if it can improve 577 // TODO(sunxd): Move screen space transforms here if it can improve
578 // performance. 578 // performance.
579 DrawTransformData() 579 DrawTransformData()
580 : update_number(-1), 580 : update_number(-1),
581 target_id(EffectTree::kInvalidNodeId), 581 target_id(EffectTree::kInvalidNodeId),
582 transforms(gfx::Transform(), gfx::Transform()) {} 582 transforms(gfx::Transform(), gfx::Transform()) {}
583 }; 583 };
584 584
585 struct ConditionalClip {
586 bool is_clipped;
587 gfx::RectF clip_rect;
588 };
589
590 struct ClipRectData {
591 int target_id;
592 ConditionalClip clip;
593
594 ClipRectData() : target_id(-1) {}
595 };
596
585 struct PropertyTreesCachedData { 597 struct PropertyTreesCachedData {
586 int transform_tree_update_number; 598 int transform_tree_update_number;
587 std::vector<AnimationScaleData> animation_scales; 599 std::vector<AnimationScaleData> animation_scales;
588 mutable std::vector<std::vector<DrawTransformData>> draw_transforms; 600 mutable std::vector<std::vector<DrawTransformData>> draw_transforms;
589 601
590 PropertyTreesCachedData(); 602 PropertyTreesCachedData();
591 ~PropertyTreesCachedData(); 603 ~PropertyTreesCachedData();
592 }; 604 };
593 605
594 class CC_EXPORT PropertyTrees final { 606 class CC_EXPORT PropertyTrees final {
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
672 bool GetFromTarget(int transform_id, 684 bool GetFromTarget(int transform_id,
673 int effect_id, 685 int effect_id,
674 gfx::Transform* from_target) const; 686 gfx::Transform* from_target) const;
675 687
676 void ResetCachedData(); 688 void ResetCachedData();
677 void UpdateTransformTreeUpdateNumber(); 689 void UpdateTransformTreeUpdateNumber();
678 gfx::Transform ToScreenSpaceTransformWithoutSurfaceContentsScale( 690 gfx::Transform ToScreenSpaceTransformWithoutSurfaceContentsScale(
679 int transform_id, 691 int transform_id,
680 int effect_id) const; 692 int effect_id) const;
681 693
694 ClipRectData* FetchClipRectFromCache(int clip_id, int target_id);
695
682 private: 696 private:
683 gfx::Vector2dF inner_viewport_container_bounds_delta_; 697 gfx::Vector2dF inner_viewport_container_bounds_delta_;
684 gfx::Vector2dF outer_viewport_container_bounds_delta_; 698 gfx::Vector2dF outer_viewport_container_bounds_delta_;
685 gfx::Vector2dF inner_viewport_scroll_bounds_delta_; 699 gfx::Vector2dF inner_viewport_scroll_bounds_delta_;
686 700
687 // GetDrawTransforms may change the value of cached_data_. 701 // GetDrawTransforms may change the value of cached_data_.
688 DrawTransforms& GetDrawTransforms(int transform_id, int effect_id) const; 702 DrawTransforms& GetDrawTransforms(int transform_id, int effect_id) const;
689 DrawTransformData& FetchDrawTransformsDataFromCache(int transform_id, 703 DrawTransformData& FetchDrawTransformsDataFromCache(int transform_id,
690 int effect_id) const; 704 int effect_id) const;
691 705
692 PropertyTreesCachedData cached_data_; 706 PropertyTreesCachedData cached_data_;
693 }; 707 };
694 708
695 } // namespace cc 709 } // namespace cc
696 710
697 #endif // CC_TREES_PROPERTY_TREE_H_ 711 #endif // CC_TREES_PROPERTY_TREE_H_
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_settings.h ('k') | cc/trees/property_tree.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698