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

Unified Diff: cc/trees/property_tree.h

Issue 2266223002: cc: Compute draw transforms dynamically. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix layout tests Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: cc/trees/property_tree.h
diff --git a/cc/trees/property_tree.h b/cc/trees/property_tree.h
index 4f3a501cc20bf46b5538ee84d3875b78a3438c86..59c15eefc88e88f8e03479d8e52cdee92bb6a92a 100644
--- a/cc/trees/property_tree.h
+++ b/cc/trees/property_tree.h
@@ -7,6 +7,7 @@
#include <stddef.h>
+#include <map>
#include <memory>
#include <unordered_map>
#include <vector>
@@ -142,19 +143,6 @@ class CC_EXPORT TransformTree final : public PropertyTree<TransformNode> {
void clear();
- // Computes the change of basis transform from node |source_id| to |dest_id|.
- // The function returns false iff the inverse of a singular transform was
- // used (and the result should, therefore, not be trusted). Transforms may
- // be computed between any pair of nodes that have an ancestor/descendant
- // relationship. Transforms between other pairs of nodes may only be computed
- // if the following condition holds: let id1 the larger id and let id2 be the
- // other id; then the nearest ancestor of node id1 whose id is smaller than
- // id2 is the lowest common ancestor of the pair of nodes, and the transform
- // from this lowest common ancestor to node id2 is only a 2d translation.
- bool ComputeTransform(int source_id,
- int dest_id,
- gfx::Transform* transform) const;
-
void OnTransformAnimated(const gfx::Transform& transform,
int id,
LayerTreeImpl* layer_tree_impl);
@@ -232,12 +220,7 @@ class CC_EXPORT TransformTree final : public PropertyTree<TransformNode> {
}
const gfx::Transform& FromTarget(int node_id, int effect) const;
- void SetFromTarget(int node_id, const gfx::Transform& transform);
-
- // TODO(sunxd): Remove target space transforms in cached data when we
- // completely implement computing draw transforms on demand.
const gfx::Transform& ToTarget(int node_id, int effect_id) const;
- void SetToTarget(int node_id, const gfx::Transform& transform);
const gfx::Transform& FromScreen(int node_id) const;
void SetFromScreen(int node_id, const gfx::Transform& transform);
@@ -259,19 +242,6 @@ class CC_EXPORT TransformTree final : public PropertyTree<TransformNode> {
void FromProtobuf(const proto::PropertyTree& proto,
std::unordered_map<int, int>* node_id_to_index_map);
- // Computes the combined transform between |source_id| and |dest_id|. These
- // two nodes must be on the same ancestor chain.
- void CombineTransformsBetween(int source_id,
- int dest_id,
- gfx::Transform* transform) const;
-
- // Computes the combined inverse transform between |source_id| and |dest_id|
- // and returns false if the inverse of a singular transform was used. These
- // two nodes must be on the same ancestor chain.
- bool CombineInversesBetween(int source_id,
- int dest_id,
- gfx::Transform* transform) const;
-
private:
// Returns true iff the node at |desc_id| is a descendant of the node at
// |anc_id|.
@@ -521,8 +491,7 @@ struct DrawTransformData {
struct PropertyTreesCachedData {
int property_tree_update_number;
std::vector<AnimationScaleData> animation_scales;
- mutable std::vector<std::unordered_map<int, DrawTransformData>>
- draw_transforms;
+ mutable std::vector<std::map<int, DrawTransformData>> draw_transforms;
ajuma 2016/09/07 14:51:23 As discussed offline, please compare the performan
sunxd 2016/09/07 15:20:02 Acknowledged.
PropertyTreesCachedData();
~PropertyTreesCachedData();
@@ -567,7 +536,6 @@ class CC_EXPORT PropertyTrees final {
int sequence_number;
bool is_main_thread;
bool is_active;
- bool verify_transform_tree_calculations;
void clear();

Powered by Google App Engine
This is Rietveld 408576698