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

Side by Side Diff: cc/playback/discardable_image_map_unittest.cc

Issue 1484163002: Raster display item lists via a visual rect RTree. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Sync to head. Created 5 years 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/playback/discardable_image_map.h" 5 #include "cc/playback/discardable_image_map.h"
6 6
7 #include "base/memory/ref_counted.h" 7 #include "base/memory/ref_counted.h"
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/values.h" 9 #include "base/values.h"
10 #include "cc/base/region.h" 10 #include "cc/base/region.h"
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 recording_source.SetGenerateDiscardableImagesMetadata(true); 86 recording_source.SetGenerateDiscardableImagesMetadata(true);
87 recording_source.UpdateAndExpandInvalidation( 87 recording_source.UpdateAndExpandInvalidation(
88 &content_layer_client, &invalidation, visible_rect.size(), visible_rect, 88 &content_layer_client, &invalidation, visible_rect.size(), visible_rect,
89 1, DisplayListRecordingSource::RECORD_NORMALLY); 89 1, DisplayListRecordingSource::RECORD_NORMALLY);
90 DisplayItemList* display_list = recording_source.display_list(); 90 DisplayItemList* display_list = recording_source.display_list();
91 91
92 DiscardableImageMap image_map; 92 DiscardableImageMap image_map;
93 { 93 {
94 DiscardableImageMap::ScopedMetadataGenerator generator(&image_map, 94 DiscardableImageMap::ScopedMetadataGenerator generator(&image_map,
95 visible_rect.size()); 95 visible_rect.size());
96 display_list->Raster(generator.canvas(), nullptr, visible_rect, 1.f); 96 display_list->Raster(generator.canvas(), nullptr, gfx::Rect(), 1.f);
97 } 97 }
98 98
99 for (int y = 0; y < 4; ++y) { 99 for (int y = 0; y < 4; ++y) {
100 for (int x = 0; x < 4; ++x) { 100 for (int x = 0; x < 4; ++x) {
101 std::vector<PositionDrawImage> images = GetDiscardableImagesInRect( 101 std::vector<PositionDrawImage> images = GetDiscardableImagesInRect(
102 image_map, gfx::Rect(x * 512, y * 512, 500, 500)); 102 image_map, gfx::Rect(x * 512, y * 512, 500, 500));
103 if ((x + y) & 1) { 103 if ((x + y) & 1) {
104 EXPECT_EQ(1u, images.size()) << x << " " << y; 104 EXPECT_EQ(1u, images.size()) << x << " " << y;
105 EXPECT_TRUE(images[0].image == discardable_image[y][x].get()) 105 EXPECT_TRUE(images[0].image == discardable_image[y][x].get())
106 << x << " " << y; 106 << x << " " << y;
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 recording_source.SetGenerateDiscardableImagesMetadata(true); 163 recording_source.SetGenerateDiscardableImagesMetadata(true);
164 recording_source.UpdateAndExpandInvalidation( 164 recording_source.UpdateAndExpandInvalidation(
165 &content_layer_client, &invalidation, layer_size, visible_rect, 1, 165 &content_layer_client, &invalidation, layer_size, visible_rect, 1,
166 DisplayListRecordingSource::RECORD_NORMALLY); 166 DisplayListRecordingSource::RECORD_NORMALLY);
167 DisplayItemList* display_list = recording_source.display_list(); 167 DisplayItemList* display_list = recording_source.display_list();
168 168
169 DiscardableImageMap image_map; 169 DiscardableImageMap image_map;
170 { 170 {
171 DiscardableImageMap::ScopedMetadataGenerator generator(&image_map, 171 DiscardableImageMap::ScopedMetadataGenerator generator(&image_map,
172 layer_size); 172 layer_size);
173 display_list->Raster(generator.canvas(), nullptr, visible_rect, 1.f); 173 display_list->Raster(generator.canvas(), nullptr, gfx::Rect(), 1.f);
174 } 174 }
175 175
176 for (int y = 0; y < 4; ++y) { 176 for (int y = 0; y < 4; ++y) {
177 for (int x = 0; x < 4; ++x) { 177 for (int x = 0; x < 4; ++x) {
178 std::vector<PositionDrawImage> images = GetDiscardableImagesInRect( 178 std::vector<PositionDrawImage> images = GetDiscardableImagesInRect(
179 image_map, gfx::Rect(1024 + x * 512, y * 512, 500, 500)); 179 image_map, gfx::Rect(1024 + x * 512, y * 512, 500, 500));
180 if ((x + y) & 1) { 180 if ((x + y) & 1) {
181 EXPECT_EQ(1u, images.size()) << x << " " << y; 181 EXPECT_EQ(1u, images.size()) << x << " " << y;
182 EXPECT_TRUE(images[0].image == discardable_image[y][x].get()) 182 EXPECT_TRUE(images[0].image == discardable_image[y][x].get())
183 << x << " " << y; 183 << x << " " << y;
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 recording_source.SetGenerateDiscardableImagesMetadata(true); 263 recording_source.SetGenerateDiscardableImagesMetadata(true);
264 recording_source.UpdateAndExpandInvalidation( 264 recording_source.UpdateAndExpandInvalidation(
265 &content_layer_client, &invalidation, visible_rect.size(), visible_rect, 265 &content_layer_client, &invalidation, visible_rect.size(), visible_rect,
266 1, DisplayListRecordingSource::RECORD_NORMALLY); 266 1, DisplayListRecordingSource::RECORD_NORMALLY);
267 DisplayItemList* display_list = recording_source.display_list(); 267 DisplayItemList* display_list = recording_source.display_list();
268 268
269 DiscardableImageMap image_map; 269 DiscardableImageMap image_map;
270 { 270 {
271 DiscardableImageMap::ScopedMetadataGenerator generator(&image_map, 271 DiscardableImageMap::ScopedMetadataGenerator generator(&image_map,
272 visible_rect.size()); 272 visible_rect.size());
273 display_list->Raster(generator.canvas(), nullptr, visible_rect, 1.f); 273 display_list->Raster(generator.canvas(), nullptr, gfx::Rect(), 1.f);
274 } 274 }
275 275
276 for (int y = 0; y < 4; ++y) { 276 for (int y = 0; y < 4; ++y) {
277 for (int x = 0; x < 4; ++x) { 277 for (int x = 0; x < 4; ++x) {
278 std::vector<PositionDrawImage> images = GetDiscardableImagesInRect( 278 std::vector<PositionDrawImage> images = GetDiscardableImagesInRect(
279 image_map, gfx::Rect(x * 512 + 256, y * 512 + 256, 1, 1)); 279 image_map, gfx::Rect(x * 512 + 256, y * 512 + 256, 1, 1));
280 if ((x + y) & 1) { 280 if ((x + y) & 1) {
281 EXPECT_EQ(1u, images.size()) << x << " " << y; 281 EXPECT_EQ(1u, images.size()) << x << " " << y;
282 EXPECT_TRUE(images[0].image == discardable_image[y][x].get()) 282 EXPECT_TRUE(images[0].image == discardable_image[y][x].get())
283 << x << " " << y; 283 << x << " " << y;
(...skipping 22 matching lines...) Expand all
306 recording_source.SetGenerateDiscardableImagesMetadata(true); 306 recording_source.SetGenerateDiscardableImagesMetadata(true);
307 recording_source.UpdateAndExpandInvalidation( 307 recording_source.UpdateAndExpandInvalidation(
308 &content_layer_client, &invalidation, visible_rect.size(), visible_rect, 308 &content_layer_client, &invalidation, visible_rect.size(), visible_rect,
309 1, DisplayListRecordingSource::RECORD_NORMALLY); 309 1, DisplayListRecordingSource::RECORD_NORMALLY);
310 DisplayItemList* display_list = recording_source.display_list(); 310 DisplayItemList* display_list = recording_source.display_list();
311 311
312 DiscardableImageMap image_map; 312 DiscardableImageMap image_map;
313 { 313 {
314 DiscardableImageMap::ScopedMetadataGenerator generator(&image_map, 314 DiscardableImageMap::ScopedMetadataGenerator generator(&image_map,
315 visible_rect.size()); 315 visible_rect.size());
316 display_list->Raster(generator.canvas(), nullptr, visible_rect, 1.f); 316 display_list->Raster(generator.canvas(), nullptr, gfx::Rect(), 1.f);
317 } 317 }
318 std::vector<PositionDrawImage> images = 318 std::vector<PositionDrawImage> images =
319 GetDiscardableImagesInRect(image_map, gfx::Rect(0, 0, 1, 1)); 319 GetDiscardableImagesInRect(image_map, gfx::Rect(0, 0, 1, 1));
320 EXPECT_EQ(1u, images.size()); 320 EXPECT_EQ(1u, images.size());
321 EXPECT_TRUE(images[0].image == discardable_image.get()); 321 EXPECT_TRUE(images[0].image == discardable_image.get());
322 EXPECT_EQ(gfx::Rect(0, 0, 1 << 25, 1 << 25), images[0].image_rect); 322 EXPECT_EQ(gfx::Rect(0, 0, 1 << 25, 1 << 25), images[0].image_rect);
323 } 323 }
324 324
325 } // namespace cc 325 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698