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

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

Issue 13285002: cc: Consolidate LayerList types. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 8 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 | Annotate | Revision Log
« no previous file with comments | « cc/trees/damage_tracker_unittest.cc ('k') | cc/trees/layer_sorter.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_SORTER_H_ 5 #ifndef CC_TREES_LAYER_SORTER_H_
6 #define CC_TREES_LAYER_SORTER_H_ 6 #define CC_TREES_LAYER_SORTER_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 float weight; 72 float weight;
73 }; 73 };
74 74
75 75
76 76
77 class CC_EXPORT LayerSorter { 77 class CC_EXPORT LayerSorter {
78 public: 78 public:
79 LayerSorter(); 79 LayerSorter();
80 ~LayerSorter(); 80 ~LayerSorter();
81 81
82 typedef std::vector<LayerImpl*> LayerList; 82 void Sort(LayerImplList::iterator first, LayerImplList::iterator last);
83
84 void Sort(LayerList::iterator first, LayerList::iterator last);
85 83
86 enum ABCompareResult { 84 enum ABCompareResult {
87 ABeforeB, 85 ABeforeB,
88 BBeforeA, 86 BBeforeA,
89 None 87 None
90 }; 88 };
91 89
92 static ABCompareResult CheckOverlap(LayerShape* a, 90 static ABCompareResult CheckOverlap(LayerShape* a,
93 LayerShape* b, 91 LayerShape* b,
94 float z_threshold, 92 float z_threshold,
95 float* weight); 93 float* weight);
96 94
97 private: 95 private:
98 typedef std::vector<GraphNode> NodeList; 96 typedef std::vector<GraphNode> NodeList;
99 typedef std::vector<GraphEdge> EdgeList; 97 typedef std::vector<GraphEdge> EdgeList;
100 NodeList nodes_; 98 NodeList nodes_;
101 EdgeList edges_; 99 EdgeList edges_;
102 float z_range_; 100 float z_range_;
103 101
104 typedef base::hash_map<GraphEdge*, GraphEdge*> EdgeMap; 102 typedef base::hash_map<GraphEdge*, GraphEdge*> EdgeMap;
105 EdgeMap active_edges_; 103 EdgeMap active_edges_;
106 104
107 void CreateGraphNodes(LayerList::iterator first, LayerList::iterator last); 105 void CreateGraphNodes(LayerImplList::iterator first,
106 LayerImplList::iterator last);
108 void CreateGraphEdges(); 107 void CreateGraphEdges();
109 void RemoveEdgeFromList(GraphEdge* graph, std::vector<GraphEdge*>* list); 108 void RemoveEdgeFromList(GraphEdge* graph, std::vector<GraphEdge*>* list);
110 109
111 DISALLOW_COPY_AND_ASSIGN(LayerSorter); 110 DISALLOW_COPY_AND_ASSIGN(LayerSorter);
112 }; 111 };
113 112
114 } // namespace cc 113 } // namespace cc
115 #endif // CC_TREES_LAYER_SORTER_H_ 114 #endif // CC_TREES_LAYER_SORTER_H_
OLDNEW
« no previous file with comments | « cc/trees/damage_tracker_unittest.cc ('k') | cc/trees/layer_sorter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698