OLD | NEW |
---|---|
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 "base/thread_task_runner_handle.h" | 5 #include "base/thread_task_runner_handle.h" |
6 #include "cc/resources/eviction_tile_priority_queue.h" | 6 #include "cc/resources/eviction_tile_priority_queue.h" |
7 #include "cc/resources/raster_tile_priority_queue.h" | 7 #include "cc/resources/raster_tile_priority_queue.h" |
8 #include "cc/resources/resource_pool.h" | 8 #include "cc/resources/resource_pool.h" |
9 #include "cc/resources/tile.h" | 9 #include "cc/resources/tile.h" |
10 #include "cc/resources/tile_priority.h" | 10 #include "cc/resources/tile_priority.h" |
(...skipping 757 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
768 } | 768 } |
769 } | 769 } |
770 | 770 |
771 last_tile = tile; | 771 last_tile = tile; |
772 ++tile_count; | 772 ++tile_count; |
773 smoothness_tiles.insert(tile); | 773 smoothness_tiles.insert(tile); |
774 queue->Pop(); | 774 queue->Pop(); |
775 } | 775 } |
776 | 776 |
777 // Ensure that the distance is decreasing many more times than increasing. | 777 // Ensure that the distance is decreasing many more times than increasing. |
778 EXPECT_EQ(3, distance_increasing); | 778 EXPECT_EQ(0, distance_increasing); |
779 EXPECT_EQ(17, distance_decreasing); | 779 EXPECT_EQ(8, distance_decreasing); |
vmpstr
2015/05/06 17:57:29
I'd prefer if these numbers stayed the same, can y
sohanjg
2015/05/07 14:42:10
Hmm..we cant modify the LayerTreeSettings from thi
vmpstr
2015/05/07 17:21:38
host_impl that is constructed for this test takes
sohanjg
2015/05/08 13:26:09
Done.
Works fine, thanks :)
| |
780 EXPECT_EQ(tile_count, smoothness_tiles.size()); | 780 EXPECT_EQ(tile_count, smoothness_tiles.size()); |
781 EXPECT_EQ(all_tiles, smoothness_tiles); | 781 EXPECT_EQ(all_tiles, smoothness_tiles); |
782 | 782 |
783 std::set<Tile*> new_content_tiles; | 783 std::set<Tile*> new_content_tiles; |
784 last_tile = NULL; | 784 last_tile = NULL; |
785 // Again, we expect to get increasing combined priority_bin. | 785 // Again, we expect to get increasing combined priority_bin. |
786 queue = host_impl_.BuildEvictionQueue(NEW_CONTENT_TAKES_PRIORITY); | 786 queue = host_impl_.BuildEvictionQueue(NEW_CONTENT_TAKES_PRIORITY); |
787 distance_decreasing = 0; | 787 distance_decreasing = 0; |
788 distance_increasing = 0; | 788 distance_increasing = 0; |
789 while (!queue->IsEmpty()) { | 789 while (!queue->IsEmpty()) { |
(...skipping 18 matching lines...) Expand all Loading... | |
808 ++distance_increasing; | 808 ++distance_increasing; |
809 } | 809 } |
810 } | 810 } |
811 | 811 |
812 last_tile = tile; | 812 last_tile = tile; |
813 new_content_tiles.insert(tile); | 813 new_content_tiles.insert(tile); |
814 queue->Pop(); | 814 queue->Pop(); |
815 } | 815 } |
816 | 816 |
817 // Ensure that the distance is decreasing many more times than increasing. | 817 // Ensure that the distance is decreasing many more times than increasing. |
818 EXPECT_EQ(3, distance_increasing); | 818 EXPECT_EQ(0, distance_increasing); |
819 EXPECT_EQ(17, distance_decreasing); | 819 EXPECT_EQ(8, distance_decreasing); |
vmpstr
2015/05/06 17:57:29
Same here.
sohanjg
2015/05/07 14:42:10
Acknowledged.
sohanjg
2015/05/08 13:26:09
Done.
| |
820 EXPECT_EQ(tile_count, new_content_tiles.size()); | 820 EXPECT_EQ(tile_count, new_content_tiles.size()); |
821 EXPECT_EQ(all_tiles, new_content_tiles); | 821 EXPECT_EQ(all_tiles, new_content_tiles); |
822 } | 822 } |
823 | 823 |
824 TEST_F(TileManagerTilePriorityQueueTest, | 824 TEST_F(TileManagerTilePriorityQueueTest, |
825 EvictionTilePriorityQueueWithOcclusion) { | 825 EvictionTilePriorityQueueWithOcclusion) { |
826 base::TimeTicks time_ticks; | 826 base::TimeTicks time_ticks; |
827 time_ticks += base::TimeDelta::FromMilliseconds(1); | 827 time_ticks += base::TimeDelta::FromMilliseconds(1); |
828 host_impl_.SetCurrentBeginFrameArgs( | 828 host_impl_.SetCurrentBeginFrameArgs( |
829 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); | 829 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1169 | 1169 |
1170 gfx::Rect viewport(50, 50, 500, 500); | 1170 gfx::Rect viewport(50, 50, 500, 500); |
1171 gfx::Size layer_bounds(1600, 1600); | 1171 gfx::Size layer_bounds(1600, 1600); |
1172 | 1172 |
1173 float inset = PictureLayerTiling::CalculateSoonBorderDistance(viewport, 1.0f); | 1173 float inset = PictureLayerTiling::CalculateSoonBorderDistance(viewport, 1.0f); |
1174 gfx::Rect soon_rect = viewport; | 1174 gfx::Rect soon_rect = viewport; |
1175 soon_rect.Inset(-inset, -inset); | 1175 soon_rect.Inset(-inset, -inset); |
1176 | 1176 |
1177 client.SetTileSize(gfx::Size(30, 30)); | 1177 client.SetTileSize(gfx::Size(30, 30)); |
1178 LayerTreeSettings settings; | 1178 LayerTreeSettings settings; |
1179 settings.max_tiles_for_interest_area = 10000; | 1179 settings.tiling_interest_area_viewport_multiplier = 36; |
vmpstr
2015/05/06 17:57:29
These numbers seem pretty random, why 36? Before i
sohanjg
2015/05/07 14:42:10
Done.
I tried to keep the interest rect same as b
| |
1180 | 1180 |
1181 scoped_ptr<PictureLayerTilingSet> tiling_set = PictureLayerTilingSet::Create( | 1181 scoped_ptr<PictureLayerTilingSet> tiling_set = PictureLayerTilingSet::Create( |
1182 ACTIVE_TREE, &client, settings.max_tiles_for_interest_area, | 1182 ACTIVE_TREE, &client, settings.tiling_interest_area_viewport_multiplier, |
1183 settings.skewport_target_time_in_seconds, | 1183 settings.skewport_target_time_in_seconds, |
1184 settings.skewport_extrapolation_limit_in_content_pixels); | 1184 settings.skewport_extrapolation_limit_in_content_pixels); |
1185 | 1185 |
1186 scoped_refptr<FakePicturePileImpl> pile = | 1186 scoped_refptr<FakePicturePileImpl> pile = |
1187 FakePicturePileImpl::CreateFilledPileWithDefaultTileSize(layer_bounds); | 1187 FakePicturePileImpl::CreateFilledPileWithDefaultTileSize(layer_bounds); |
1188 PictureLayerTiling* tiling = tiling_set->AddTiling(1.0f, pile); | 1188 PictureLayerTiling* tiling = tiling_set->AddTiling(1.0f, pile); |
1189 tiling->set_resolution(HIGH_RESOLUTION); | 1189 tiling->set_resolution(HIGH_RESOLUTION); |
1190 | 1190 |
1191 tiling_set->UpdateTilePriorities(viewport, 1.0f, 1.0, Occlusion(), true); | 1191 tiling_set->UpdateTilePriorities(viewport, 1.0f, 1.0, Occlusion(), true); |
1192 std::vector<Tile*> all_tiles = tiling->AllTilesForTesting(); | 1192 std::vector<Tile*> all_tiles = tiling->AllTilesForTesting(); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1279 TEST_F(TileManagerTilePriorityQueueTest, | 1279 TEST_F(TileManagerTilePriorityQueueTest, |
1280 RasterTilePriorityQueueMovingViewport) { | 1280 RasterTilePriorityQueueMovingViewport) { |
1281 FakePictureLayerTilingClient client; | 1281 FakePictureLayerTilingClient client; |
1282 | 1282 |
1283 gfx::Rect viewport(50, 0, 100, 100); | 1283 gfx::Rect viewport(50, 0, 100, 100); |
1284 gfx::Rect moved_viewport(50, 0, 100, 500); | 1284 gfx::Rect moved_viewport(50, 0, 100, 500); |
1285 gfx::Size layer_bounds(1000, 1000); | 1285 gfx::Size layer_bounds(1000, 1000); |
1286 | 1286 |
1287 client.SetTileSize(gfx::Size(30, 30)); | 1287 client.SetTileSize(gfx::Size(30, 30)); |
1288 LayerTreeSettings settings; | 1288 LayerTreeSettings settings; |
1289 settings.max_tiles_for_interest_area = 10000; | 1289 settings.tiling_interest_area_viewport_multiplier = 180; |
1290 | 1290 |
1291 scoped_ptr<PictureLayerTilingSet> tiling_set = PictureLayerTilingSet::Create( | 1291 scoped_ptr<PictureLayerTilingSet> tiling_set = PictureLayerTilingSet::Create( |
1292 ACTIVE_TREE, &client, settings.max_tiles_for_interest_area, | 1292 ACTIVE_TREE, &client, settings.tiling_interest_area_viewport_multiplier, |
1293 settings.skewport_target_time_in_seconds, | 1293 settings.skewport_target_time_in_seconds, |
1294 settings.skewport_extrapolation_limit_in_content_pixels); | 1294 settings.skewport_extrapolation_limit_in_content_pixels); |
1295 | 1295 |
1296 scoped_refptr<FakePicturePileImpl> pile = | 1296 scoped_refptr<FakePicturePileImpl> pile = |
1297 FakePicturePileImpl::CreateFilledPileWithDefaultTileSize(layer_bounds); | 1297 FakePicturePileImpl::CreateFilledPileWithDefaultTileSize(layer_bounds); |
1298 PictureLayerTiling* tiling = tiling_set->AddTiling(1.0f, pile); | 1298 PictureLayerTiling* tiling = tiling_set->AddTiling(1.0f, pile); |
1299 tiling->set_resolution(HIGH_RESOLUTION); | 1299 tiling->set_resolution(HIGH_RESOLUTION); |
1300 | 1300 |
1301 tiling_set->UpdateTilePriorities(viewport, 1.0f, 1.0, Occlusion(), true); | 1301 tiling_set->UpdateTilePriorities(viewport, 1.0f, 1.0, Occlusion(), true); |
1302 tiling_set->UpdateTilePriorities(moved_viewport, 1.0f, 2.0, Occlusion(), | 1302 tiling_set->UpdateTilePriorities(moved_viewport, 1.0f, 2.0, Occlusion(), |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1416 RGBA_8888); | 1416 RGBA_8888); |
1417 | 1417 |
1418 host_impl_.tile_manager()->CheckIfMoreTilesNeedToBePreparedForTesting(); | 1418 host_impl_.tile_manager()->CheckIfMoreTilesNeedToBePreparedForTesting(); |
1419 EXPECT_FALSE(host_impl_.is_likely_to_require_a_draw()); | 1419 EXPECT_FALSE(host_impl_.is_likely_to_require_a_draw()); |
1420 | 1420 |
1421 host_impl_.resource_pool()->ReleaseResource(resource.Pass()); | 1421 host_impl_.resource_pool()->ReleaseResource(resource.Pass()); |
1422 } | 1422 } |
1423 | 1423 |
1424 } // namespace | 1424 } // namespace |
1425 } // namespace cc | 1425 } // namespace cc |
OLD | NEW |