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

Side by Side Diff: cc/tiles/tile_manager_unittest.cc

Issue 2629233002: cc: Remove separate x/y raster scales. (Closed)
Patch Set: Created 3 years, 11 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
« no previous file with comments | « cc/tiles/tile_manager.cc ('k') | cc/trees/layer_tree_host_unittest.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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 <stddef.h> 5 #include <stddef.h>
6 #include <stdint.h> 6 #include <stdint.h>
7 7
8 #include "base/memory/ptr_util.h" 8 #include "base/memory/ptr_util.h"
9 #include "base/run_loop.h" 9 #include "base/run_loop.h"
10 #include "base/threading/thread_task_runner_handle.h" 10 #include "base/threading/thread_task_runner_handle.h"
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after
323 active_layer()->tilings()->AddTiling(1.7f, active_layer()->raster_source()); 323 active_layer()->tilings()->AddTiling(1.7f, active_layer()->raster_source());
324 324
325 pending_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 325 pending_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f,
326 5.0, Occlusion(), true); 326 5.0, Occlusion(), true);
327 active_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 5.0, 327 active_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 5.0,
328 Occlusion(), true); 328 Occlusion(), true);
329 329
330 std::set<Tile*> all_expected_tiles; 330 std::set<Tile*> all_expected_tiles;
331 for (size_t i = 0; i < pending_layer()->num_tilings(); ++i) { 331 for (size_t i = 0; i < pending_layer()->num_tilings(); ++i) {
332 PictureLayerTiling* tiling = pending_layer()->tilings()->tiling_at(i); 332 PictureLayerTiling* tiling = pending_layer()->tilings()->tiling_at(i);
333 if (tiling->contents_scale_key() == 1.f) { 333 if (tiling->contents_scale() == 1.f) {
334 tiling->set_resolution(HIGH_RESOLUTION); 334 tiling->set_resolution(HIGH_RESOLUTION);
335 const auto& all_tiles = tiling->AllTilesForTesting(); 335 const auto& all_tiles = tiling->AllTilesForTesting();
336 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); 336 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end());
337 } else { 337 } else {
338 tiling->set_resolution(NON_IDEAL_RESOLUTION); 338 tiling->set_resolution(NON_IDEAL_RESOLUTION);
339 } 339 }
340 } 340 }
341 341
342 for (size_t i = 0; i < active_layer()->num_tilings(); ++i) { 342 for (size_t i = 0; i < active_layer()->num_tilings(); ++i) {
343 PictureLayerTiling* tiling = active_layer()->tilings()->tiling_at(i); 343 PictureLayerTiling* tiling = active_layer()->tilings()->tiling_at(i);
344 if (tiling->contents_scale_key() == 1.5f) { 344 if (tiling->contents_scale() == 1.5f) {
345 tiling->set_resolution(HIGH_RESOLUTION); 345 tiling->set_resolution(HIGH_RESOLUTION);
346 const auto& all_tiles = tiling->AllTilesForTesting(); 346 const auto& all_tiles = tiling->AllTilesForTesting();
347 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); 347 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end());
348 } else { 348 } else {
349 tiling->set_resolution(NON_IDEAL_RESOLUTION); 349 tiling->set_resolution(NON_IDEAL_RESOLUTION);
350 // Non ideal tilings with a high res pending twin have to be processed 350 // Non ideal tilings with a high res pending twin have to be processed
351 // because of possible activation tiles. 351 // because of possible activation tiles.
352 if (tiling->contents_scale_key() == 1.f) { 352 if (tiling->contents_scale() == 1.f) {
353 tiling->UpdateAndGetAllPrioritizedTilesForTesting(); 353 tiling->UpdateAndGetAllPrioritizedTilesForTesting();
354 const auto& all_tiles = tiling->AllTilesForTesting(); 354 const auto& all_tiles = tiling->AllTilesForTesting();
355 for (auto* tile : all_tiles) 355 for (auto* tile : all_tiles)
356 EXPECT_TRUE(tile->required_for_activation()); 356 EXPECT_TRUE(tile->required_for_activation());
357 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); 357 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end());
358 } 358 }
359 } 359 }
360 } 360 }
361 361
362 std::unique_ptr<RasterTilePriorityQueue> queue(host_impl()->BuildRasterQueue( 362 std::unique_ptr<RasterTilePriorityQueue> queue(host_impl()->BuildRasterQueue(
(...skipping 27 matching lines...) Expand all
390 active_layer()->tilings()->AddTiling(1.7f, active_layer()->raster_source()); 390 active_layer()->tilings()->AddTiling(1.7f, active_layer()->raster_source());
391 391
392 pending_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 392 pending_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f,
393 5.0, Occlusion(), true); 393 5.0, Occlusion(), true);
394 active_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 5.0, 394 active_layer()->tilings()->UpdateTilePriorities(gfx::Rect(viewport), 1.f, 5.0,
395 Occlusion(), true); 395 Occlusion(), true);
396 396
397 std::set<Tile*> all_expected_tiles; 397 std::set<Tile*> all_expected_tiles;
398 for (size_t i = 0; i < pending_layer()->num_tilings(); ++i) { 398 for (size_t i = 0; i < pending_layer()->num_tilings(); ++i) {
399 PictureLayerTiling* tiling = pending_layer()->tilings()->tiling_at(i); 399 PictureLayerTiling* tiling = pending_layer()->tilings()->tiling_at(i);
400 if (tiling->contents_scale_key() == 1.f) { 400 if (tiling->contents_scale() == 1.f) {
401 tiling->set_resolution(HIGH_RESOLUTION); 401 tiling->set_resolution(HIGH_RESOLUTION);
402 const auto& all_tiles = tiling->AllTilesForTesting(); 402 const auto& all_tiles = tiling->AllTilesForTesting();
403 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); 403 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end());
404 } else { 404 } else {
405 tiling->set_resolution(NON_IDEAL_RESOLUTION); 405 tiling->set_resolution(NON_IDEAL_RESOLUTION);
406 } 406 }
407 } 407 }
408 408
409 for (size_t i = 0; i < active_layer()->num_tilings(); ++i) { 409 for (size_t i = 0; i < active_layer()->num_tilings(); ++i) {
410 PictureLayerTiling* tiling = active_layer()->tilings()->tiling_at(i); 410 PictureLayerTiling* tiling = active_layer()->tilings()->tiling_at(i);
411 if (tiling->contents_scale_key() == 1.5f) { 411 if (tiling->contents_scale() == 1.5f) {
412 tiling->set_resolution(HIGH_RESOLUTION); 412 tiling->set_resolution(HIGH_RESOLUTION);
413 const auto& all_tiles = tiling->AllTilesForTesting(); 413 const auto& all_tiles = tiling->AllTilesForTesting();
414 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); 414 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end());
415 } else { 415 } else {
416 tiling->set_resolution(LOW_RESOLUTION); 416 tiling->set_resolution(LOW_RESOLUTION);
417 // Low res tilings with a high res pending twin have to be processed 417 // Low res tilings with a high res pending twin have to be processed
418 // because of possible activation tiles. 418 // because of possible activation tiles.
419 if (tiling->contents_scale_key() == 1.f) { 419 if (tiling->contents_scale() == 1.f) {
420 tiling->UpdateAndGetAllPrioritizedTilesForTesting(); 420 tiling->UpdateAndGetAllPrioritizedTilesForTesting();
421 const auto& all_tiles = tiling->AllTilesForTesting(); 421 const auto& all_tiles = tiling->AllTilesForTesting();
422 for (auto* tile : all_tiles) 422 for (auto* tile : all_tiles)
423 EXPECT_TRUE(tile->required_for_activation()); 423 EXPECT_TRUE(tile->required_for_activation());
424 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end()); 424 all_expected_tiles.insert(all_tiles.begin(), all_tiles.end());
425 } 425 }
426 } 426 }
427 } 427 }
428 428
429 std::unique_ptr<RasterTilePriorityQueue> queue(host_impl()->BuildRasterQueue( 429 std::unique_ptr<RasterTilePriorityQueue> queue(host_impl()->BuildRasterQueue(
(...skipping 437 matching lines...) Expand 10 before | Expand all | Expand 10 after
867 867
868 bool last_tile_is_occluded = last_tile.is_occluded(); 868 bool last_tile_is_occluded = last_tile.is_occluded();
869 if (!last_tile_is_occluded) { 869 if (!last_tile_is_occluded) {
870 TilePriority::PriorityBin tile_priority_bin = 870 TilePriority::PriorityBin tile_priority_bin =
871 prioritized_tile.priority().priority_bin; 871 prioritized_tile.priority().priority_bin;
872 TilePriority::PriorityBin last_tile_priority_bin = 872 TilePriority::PriorityBin last_tile_priority_bin =
873 last_tile.priority().priority_bin; 873 last_tile.priority().priority_bin;
874 874
875 EXPECT_TRUE((tile_priority_bin < last_tile_priority_bin) || 875 EXPECT_TRUE((tile_priority_bin < last_tile_priority_bin) ||
876 prioritized_tile.tile()->required_for_activation() || 876 prioritized_tile.tile()->required_for_activation() ||
877 (prioritized_tile.tile()->contents_scale_key() != 877 (prioritized_tile.tile()->contents_scale() !=
878 last_tile.tile()->contents_scale_key())); 878 last_tile.tile()->contents_scale()));
879 } 879 }
880 } 880 }
881 last_tile = prioritized_tile; 881 last_tile = prioritized_tile;
882 queue->Pop(); 882 queue->Pop();
883 } 883 }
884 size_t expected_occluded_count = pending_child_high_res_tiles.size(); 884 size_t expected_occluded_count = pending_child_high_res_tiles.size();
885 EXPECT_EQ(expected_occluded_count, occluded_count); 885 EXPECT_EQ(expected_occluded_count, occluded_count);
886 } 886 }
887 887
888 TEST_F(TileManagerTilePriorityQueueTest, 888 TEST_F(TileManagerTilePriorityQueueTest,
(...skipping 990 matching lines...) Expand 10 before | Expand all | Expand 10 after
1879 } 1879 }
1880 1880
1881 // Ensures that the tile manager does not attempt to reuse tiles when partial 1881 // Ensures that the tile manager does not attempt to reuse tiles when partial
1882 // raster is disabled. 1882 // raster is disabled.
1883 TEST_F(TileManagerTest, PartialRasterSuccessfullyDisabled) { 1883 TEST_F(TileManagerTest, PartialRasterSuccessfullyDisabled) {
1884 RunPartialRasterCheck(TakeHostImpl(), false /* partial_raster_enabled */); 1884 RunPartialRasterCheck(TakeHostImpl(), false /* partial_raster_enabled */);
1885 } 1885 }
1886 1886
1887 } // namespace 1887 } // namespace
1888 } // namespace cc 1888 } // namespace cc
OLDNEW
« no previous file with comments | « cc/tiles/tile_manager.cc ('k') | cc/trees/layer_tree_host_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698