OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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_RESOURCES_TILE_MANAGER_H_ | 5 #ifndef CC_RESOURCES_TILE_MANAGER_H_ |
6 #define CC_RESOURCES_TILE_MANAGER_H_ | 6 #define CC_RESOURCES_TILE_MANAGER_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 #include <queue> | 9 #include <queue> |
10 #include <set> | 10 #include <set> |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
92 // Adding additional values requires increasing kNumberOfTaskSets in | 92 // Adding additional values requires increasing kNumberOfTaskSets in |
93 // rasterizer.h | 93 // rasterizer.h |
94 }; | 94 }; |
95 | 95 |
96 static scoped_ptr<TileManager> Create( | 96 static scoped_ptr<TileManager> Create( |
97 TileManagerClient* client, | 97 TileManagerClient* client, |
98 base::SequencedTaskRunner* task_runner, | 98 base::SequencedTaskRunner* task_runner, |
99 ResourcePool* resource_pool, | 99 ResourcePool* resource_pool, |
100 Rasterizer* rasterizer, | 100 Rasterizer* rasterizer, |
101 RenderingStatsInstrumentation* rendering_stats_instrumentation); | 101 RenderingStatsInstrumentation* rendering_stats_instrumentation); |
102 virtual ~TileManager(); | 102 ~TileManager() override; |
103 | 103 |
104 void ManageTiles(const GlobalStateThatImpactsTilePriority& state); | 104 void ManageTiles(const GlobalStateThatImpactsTilePriority& state); |
105 | 105 |
106 // Returns true when visible tiles have been initialized. | 106 // Returns true when visible tiles have been initialized. |
107 bool UpdateVisibleTiles(); | 107 bool UpdateVisibleTiles(); |
108 | 108 |
109 scoped_refptr<Tile> CreateTile(PicturePileImpl* picture_pile, | 109 scoped_refptr<Tile> CreateTile(PicturePileImpl* picture_pile, |
110 const gfx::Size& tile_size, | 110 const gfx::Size& tile_size, |
111 const gfx::Rect& content_rect, | 111 const gfx::Rect& content_rect, |
112 float contents_scale, | 112 float contents_scale, |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
163 const scoped_refptr<base::SequencedTaskRunner>& task_runner, | 163 const scoped_refptr<base::SequencedTaskRunner>& task_runner, |
164 ResourcePool* resource_pool, | 164 ResourcePool* resource_pool, |
165 Rasterizer* rasterizer, | 165 Rasterizer* rasterizer, |
166 RenderingStatsInstrumentation* rendering_stats_instrumentation); | 166 RenderingStatsInstrumentation* rendering_stats_instrumentation); |
167 | 167 |
168 void FreeResourcesForReleasedTiles(); | 168 void FreeResourcesForReleasedTiles(); |
169 void CleanUpReleasedTiles(); | 169 void CleanUpReleasedTiles(); |
170 | 170 |
171 // Overriden from RefCountedManager<Tile>: | 171 // Overriden from RefCountedManager<Tile>: |
172 friend class Tile; | 172 friend class Tile; |
173 virtual void Release(Tile* tile) override; | 173 void Release(Tile* tile) override; |
174 | 174 |
175 // Overriden from RasterizerClient: | 175 // Overriden from RasterizerClient: |
176 virtual void DidFinishRunningTasks(TaskSet task_set) override; | 176 void DidFinishRunningTasks(TaskSet task_set) override; |
177 virtual TaskSetCollection TasksThatShouldBeForcedToComplete() const override; | 177 TaskSetCollection TasksThatShouldBeForcedToComplete() const override; |
178 | 178 |
179 typedef std::vector<Tile*> TileVector; | 179 typedef std::vector<Tile*> TileVector; |
180 typedef std::set<Tile*> TileSet; | 180 typedef std::set<Tile*> TileSet; |
181 | 181 |
182 // Virtual for test | 182 // Virtual for test |
183 virtual void ScheduleTasks( | 183 virtual void ScheduleTasks( |
184 const TileVector& tiles_that_need_to_be_rasterized); | 184 const TileVector& tiles_that_need_to_be_rasterized); |
185 | 185 |
186 void AssignGpuMemoryToTiles(TileVector* tiles_that_need_to_be_rasterized); | 186 void AssignGpuMemoryToTiles(TileVector* tiles_that_need_to_be_rasterized); |
187 | 187 |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
273 RasterTilePriorityQueue raster_priority_queue_; | 273 RasterTilePriorityQueue raster_priority_queue_; |
274 EvictionTilePriorityQueue eviction_priority_queue_; | 274 EvictionTilePriorityQueue eviction_priority_queue_; |
275 bool eviction_priority_queue_is_up_to_date_; | 275 bool eviction_priority_queue_is_up_to_date_; |
276 | 276 |
277 DISALLOW_COPY_AND_ASSIGN(TileManager); | 277 DISALLOW_COPY_AND_ASSIGN(TileManager); |
278 }; | 278 }; |
279 | 279 |
280 } // namespace cc | 280 } // namespace cc |
281 | 281 |
282 #endif // CC_RESOURCES_TILE_MANAGER_H_ | 282 #endif // CC_RESOURCES_TILE_MANAGER_H_ |
OLD | NEW |