| OLD | NEW |
| 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 553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 564 DrawTransforms transforms; | 564 DrawTransforms transforms; |
| 565 | 565 |
| 566 // TODO(sunxd): Move screen space transforms here if it can improve | 566 // TODO(sunxd): Move screen space transforms here if it can improve |
| 567 // performance. | 567 // performance. |
| 568 DrawTransformData() | 568 DrawTransformData() |
| 569 : update_number(-1), | 569 : update_number(-1), |
| 570 target_id(EffectTree::kInvalidNodeId), | 570 target_id(EffectTree::kInvalidNodeId), |
| 571 transforms(gfx::Transform(), gfx::Transform()) {} | 571 transforms(gfx::Transform(), gfx::Transform()) {} |
| 572 }; | 572 }; |
| 573 | 573 |
| 574 struct ConditionalClip { |
| 575 bool is_clipped; |
| 576 gfx::RectF clip_rect; |
| 577 }; |
| 578 |
| 579 struct ClipRectData { |
| 580 int target_id; |
| 581 ConditionalClip clip; |
| 582 |
| 583 ClipRectData() : target_id(-1) {} |
| 584 }; |
| 585 |
| 574 struct PropertyTreesCachedData { | 586 struct PropertyTreesCachedData { |
| 575 int transform_tree_update_number; | 587 int transform_tree_update_number; |
| 576 std::vector<AnimationScaleData> animation_scales; | 588 std::vector<AnimationScaleData> animation_scales; |
| 577 mutable std::vector<std::vector<DrawTransformData>> draw_transforms; | 589 mutable std::vector<std::vector<DrawTransformData>> draw_transforms; |
| 578 | 590 |
| 579 PropertyTreesCachedData(); | 591 PropertyTreesCachedData(); |
| 580 ~PropertyTreesCachedData(); | 592 ~PropertyTreesCachedData(); |
| 581 }; | 593 }; |
| 582 | 594 |
| 583 class CC_EXPORT PropertyTrees final { | 595 class CC_EXPORT PropertyTrees final { |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 661 bool GetFromTarget(int transform_id, | 673 bool GetFromTarget(int transform_id, |
| 662 int effect_id, | 674 int effect_id, |
| 663 gfx::Transform* from_target) const; | 675 gfx::Transform* from_target) const; |
| 664 | 676 |
| 665 void ResetCachedData(); | 677 void ResetCachedData(); |
| 666 void UpdateTransformTreeUpdateNumber(); | 678 void UpdateTransformTreeUpdateNumber(); |
| 667 gfx::Transform ToScreenSpaceTransformWithoutSurfaceContentsScale( | 679 gfx::Transform ToScreenSpaceTransformWithoutSurfaceContentsScale( |
| 668 int transform_id, | 680 int transform_id, |
| 669 int effect_id) const; | 681 int effect_id) const; |
| 670 | 682 |
| 683 ClipRectData* FetchClipRectFromCache(int clip_id, int target_id); |
| 684 |
| 671 private: | 685 private: |
| 672 gfx::Vector2dF inner_viewport_container_bounds_delta_; | 686 gfx::Vector2dF inner_viewport_container_bounds_delta_; |
| 673 gfx::Vector2dF outer_viewport_container_bounds_delta_; | 687 gfx::Vector2dF outer_viewport_container_bounds_delta_; |
| 674 gfx::Vector2dF inner_viewport_scroll_bounds_delta_; | 688 gfx::Vector2dF inner_viewport_scroll_bounds_delta_; |
| 675 | 689 |
| 676 // GetDrawTransforms may change the value of cached_data_. | 690 // GetDrawTransforms may change the value of cached_data_. |
| 677 DrawTransforms& GetDrawTransforms(int transform_id, int effect_id) const; | 691 DrawTransforms& GetDrawTransforms(int transform_id, int effect_id) const; |
| 678 DrawTransformData& FetchDrawTransformsDataFromCache(int transform_id, | 692 DrawTransformData& FetchDrawTransformsDataFromCache(int transform_id, |
| 679 int effect_id) const; | 693 int effect_id) const; |
| 680 | 694 |
| 681 PropertyTreesCachedData cached_data_; | 695 PropertyTreesCachedData cached_data_; |
| 682 }; | 696 }; |
| 683 | 697 |
| 684 } // namespace cc | 698 } // namespace cc |
| 685 | 699 |
| 686 #endif // CC_TREES_PROPERTY_TREE_H_ | 700 #endif // CC_TREES_PROPERTY_TREE_H_ |
| OLD | NEW |