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 #include "cc/resources/picture_layer_tiling_set.h" | 5 #include "cc/resources/picture_layer_tiling_set.h" |
6 | 6 |
7 #include <limits> | 7 #include <limits> |
8 | 8 |
9 namespace cc { | 9 namespace cc { |
10 | 10 |
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
296 return *this; | 296 return *this; |
297 } | 297 } |
298 | 298 |
299 PictureLayerTilingSet::CoverageIterator::operator bool() const { | 299 PictureLayerTilingSet::CoverageIterator::operator bool() const { |
300 return current_tiling_ < static_cast<int>(set_->tilings_.size()) || | 300 return current_tiling_ < static_cast<int>(set_->tilings_.size()) || |
301 region_iter_.has_rect(); | 301 region_iter_.has_rect(); |
302 } | 302 } |
303 | 303 |
304 void PictureLayerTilingSet::UpdateTilePriorities( | 304 void PictureLayerTilingSet::UpdateTilePriorities( |
305 WhichTree tree, | 305 WhichTree tree, |
306 const gfx::Size& device_viewport, | |
307 const gfx::Rect& viewport_in_content_space, | |
308 const gfx::Rect& visible_content_rect, | 306 const gfx::Rect& visible_content_rect, |
309 const gfx::Size& last_layer_bounds, | 307 float layer_contents_scale, |
310 const gfx::Size& current_layer_bounds, | 308 double current_frame_time_in_seconds) { |
311 float last_layer_contents_scale, | |
312 float current_layer_contents_scale, | |
313 const gfx::Transform& last_screen_transform, | |
314 const gfx::Transform& current_screen_transform, | |
315 double current_frame_time_in_seconds, | |
316 size_t max_tiles_for_interest_area) { | |
317 gfx::Rect viewport_in_layer_space = gfx::ScaleToEnclosingRect( | |
318 viewport_in_content_space, | |
319 1.f / current_layer_contents_scale); | |
320 gfx::Rect visible_layer_rect = gfx::ScaleToEnclosingRect( | 309 gfx::Rect visible_layer_rect = gfx::ScaleToEnclosingRect( |
321 visible_content_rect, | 310 visible_content_rect, 1.f / layer_contents_scale); |
322 1.f / current_layer_contents_scale); | |
323 | 311 |
324 for (size_t i = 0; i < tilings_.size(); ++i) { | 312 for (size_t i = 0; i < tilings_.size(); ++i) { |
325 tilings_[i]->UpdateTilePriorities( | 313 tilings_[i]->UpdateTilePriorities(tree, |
326 tree, | 314 visible_layer_rect, |
327 device_viewport, | 315 layer_contents_scale, |
328 viewport_in_layer_space, | 316 current_frame_time_in_seconds); |
329 visible_layer_rect, | |
330 last_layer_bounds, | |
331 current_layer_bounds, | |
332 last_layer_contents_scale, | |
333 current_layer_contents_scale, | |
334 last_screen_transform, | |
335 current_screen_transform, | |
336 current_frame_time_in_seconds, | |
337 max_tiles_for_interest_area); | |
338 } | 317 } |
339 } | 318 } |
340 | 319 |
341 void PictureLayerTilingSet::DidBecomeActive() { | 320 void PictureLayerTilingSet::DidBecomeActive() { |
342 for (size_t i = 0; i < tilings_.size(); ++i) | 321 for (size_t i = 0; i < tilings_.size(); ++i) |
343 tilings_[i]->DidBecomeActive(); | 322 tilings_[i]->DidBecomeActive(); |
344 } | 323 } |
345 | 324 |
346 void PictureLayerTilingSet::DidBecomeRecycled() { | 325 void PictureLayerTilingSet::DidBecomeRecycled() { |
347 for (size_t i = 0; i < tilings_.size(); ++i) | 326 for (size_t i = 0; i < tilings_.size(); ++i) |
348 tilings_[i]->DidBecomeRecycled(); | 327 tilings_[i]->DidBecomeRecycled(); |
349 } | 328 } |
350 | 329 |
351 scoped_ptr<base::Value> PictureLayerTilingSet::AsValue() const { | 330 scoped_ptr<base::Value> PictureLayerTilingSet::AsValue() const { |
352 scoped_ptr<base::ListValue> state(new base::ListValue()); | 331 scoped_ptr<base::ListValue> state(new base::ListValue()); |
353 for (size_t i = 0; i < tilings_.size(); ++i) | 332 for (size_t i = 0; i < tilings_.size(); ++i) |
354 state->Append(tilings_[i]->AsValue().release()); | 333 state->Append(tilings_[i]->AsValue().release()); |
355 return state.PassAs<base::Value>(); | 334 return state.PassAs<base::Value>(); |
356 } | 335 } |
357 | 336 |
358 size_t PictureLayerTilingSet::GPUMemoryUsageInBytes() const { | 337 size_t PictureLayerTilingSet::GPUMemoryUsageInBytes() const { |
359 size_t amount = 0; | 338 size_t amount = 0; |
360 for (size_t i = 0; i < tilings_.size(); ++i) | 339 for (size_t i = 0; i < tilings_.size(); ++i) |
361 amount += tilings_[i]->GPUMemoryUsageInBytes(); | 340 amount += tilings_[i]->GPUMemoryUsageInBytes(); |
362 return amount; | 341 return amount; |
363 } | 342 } |
364 | 343 |
365 } // namespace cc | 344 } // namespace cc |
OLD | NEW |