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

Side by Side Diff: cc/trees/layer_tree_host_unittest_delegated.cc

Issue 448303002: Use custom ListContainer to allocate DrawQuads (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@perftest
Patch Set: change header files to try fix compile error Created 6 years, 2 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/trees/layer_tree_host_unittest.cc ('k') | content/common/cc_messages.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 "cc/trees/layer_tree_host.h" 5 #include "cc/trees/layer_tree_host.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/location.h" 10 #include "base/location.h"
(...skipping 750 matching lines...) Expand 10 before | Expand all | Expand 10 after
761 EXPECT_EQ(1u, map.count(999)); 761 EXPECT_EQ(1u, map.count(999));
762 EXPECT_EQ(1u, map.count(555)); 762 EXPECT_EQ(1u, map.count(555));
763 763
764 ResourceProvider::ResourceId parent_resource_id1 = map.find(999)->second; 764 ResourceProvider::ResourceId parent_resource_id1 = map.find(999)->second;
765 EXPECT_NE(parent_resource_id1, 999u); 765 EXPECT_NE(parent_resource_id1, 999u);
766 ResourceProvider::ResourceId parent_resource_id2 = map.find(555)->second; 766 ResourceProvider::ResourceId parent_resource_id2 = map.find(555)->second;
767 EXPECT_NE(parent_resource_id2, 555u); 767 EXPECT_NE(parent_resource_id2, 555u);
768 768
769 // The resources in the quads should be remapped to the parent's namespace. 769 // The resources in the quads should be remapped to the parent's namespace.
770 const TextureDrawQuad* quad1 = TextureDrawQuad::MaterialCast( 770 const TextureDrawQuad* quad1 = TextureDrawQuad::MaterialCast(
771 delegated_impl->RenderPassesInDrawOrder()[0]->quad_list[0]); 771 delegated_impl->RenderPassesInDrawOrder()[0]->quad_list.ElementAt(0));
772 EXPECT_EQ(parent_resource_id1, quad1->resource_id); 772 EXPECT_EQ(parent_resource_id1, quad1->resource_id);
773 const TextureDrawQuad* quad2 = TextureDrawQuad::MaterialCast( 773 const TextureDrawQuad* quad2 = TextureDrawQuad::MaterialCast(
774 delegated_impl->RenderPassesInDrawOrder()[0]->quad_list[1]); 774 delegated_impl->RenderPassesInDrawOrder()[0]->quad_list.ElementAt(1));
775 EXPECT_EQ(parent_resource_id2, quad2->resource_id); 775 EXPECT_EQ(parent_resource_id2, quad2->resource_id);
776 776
777 EndTest(); 777 EndTest();
778 } 778 }
779 }; 779 };
780 780
781 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostDelegatedTestRemapResourcesInQuads); 781 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostDelegatedTestRemapResourcesInQuads);
782 782
783 class LayerTreeHostDelegatedTestReturnUnusedResources 783 class LayerTreeHostDelegatedTestReturnUnusedResources
784 : public LayerTreeHostDelegatedTestCaseSingleDelegatedLayer { 784 : public LayerTreeHostDelegatedTestCaseSingleDelegatedLayer {
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
1013 // one with resource 999) on the impl tree. And only 999 will be present 1013 // one with resource 999) on the impl tree. And only 999 will be present
1014 // in the parent's resource provider. 1014 // in the parent's resource provider.
1015 EXPECT_EQ(1u, map.size()); 1015 EXPECT_EQ(1u, map.size());
1016 EXPECT_EQ(1u, map.count(999)); 1016 EXPECT_EQ(1u, map.count(999));
1017 1017
1018 EXPECT_EQ(1u, delegated_impl->Resources().size()); 1018 EXPECT_EQ(1u, delegated_impl->Resources().size());
1019 EXPECT_EQ(1u, delegated_impl->Resources().count(999)); 1019 EXPECT_EQ(1u, delegated_impl->Resources().count(999));
1020 1020
1021 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0]; 1021 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0];
1022 EXPECT_EQ(1u, pass->quad_list.size()); 1022 EXPECT_EQ(1u, pass->quad_list.size());
1023 const TextureDrawQuad* quad = TextureDrawQuad::MaterialCast( 1023 const TextureDrawQuad* quad =
1024 pass->quad_list[0]); 1024 TextureDrawQuad::MaterialCast(pass->quad_list.front());
1025 EXPECT_EQ(map.find(999)->second, quad->resource_id); 1025 EXPECT_EQ(map.find(999)->second, quad->resource_id);
1026 1026
1027 EndTest(); 1027 EndTest();
1028 } 1028 }
1029 1029
1030 virtual void SwapBuffersOnThread(LayerTreeHostImpl* host_impl, 1030 virtual void SwapBuffersOnThread(LayerTreeHostImpl* host_impl,
1031 bool result) OVERRIDE { 1031 bool result) OVERRIDE {
1032 ReturnUnusedResourcesFromParent(host_impl); 1032 ReturnUnusedResourcesFromParent(host_impl);
1033 } 1033 }
1034 }; 1034 };
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
1128 EXPECT_EQ(1u, map.count(555)); 1128 EXPECT_EQ(1u, map.count(555));
1129 EXPECT_EQ(1u, map.count(444)); 1129 EXPECT_EQ(1u, map.count(444));
1130 1130
1131 EXPECT_EQ(3u, delegated_impl->Resources().size()); 1131 EXPECT_EQ(3u, delegated_impl->Resources().size());
1132 EXPECT_EQ(1u, delegated_impl->Resources().count(999)); 1132 EXPECT_EQ(1u, delegated_impl->Resources().count(999));
1133 EXPECT_EQ(1u, delegated_impl->Resources().count(555)); 1133 EXPECT_EQ(1u, delegated_impl->Resources().count(555));
1134 EXPECT_EQ(1u, delegated_impl->Resources().count(444)); 1134 EXPECT_EQ(1u, delegated_impl->Resources().count(444));
1135 1135
1136 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0]; 1136 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0];
1137 EXPECT_EQ(3u, pass->quad_list.size()); 1137 EXPECT_EQ(3u, pass->quad_list.size());
1138 const TextureDrawQuad* quad1 = TextureDrawQuad::MaterialCast( 1138 const TextureDrawQuad* quad1 =
1139 pass->quad_list[0]); 1139 TextureDrawQuad::MaterialCast(pass->quad_list.ElementAt(0));
1140 EXPECT_EQ(map.find(999)->second, quad1->resource_id); 1140 EXPECT_EQ(map.find(999)->second, quad1->resource_id);
1141 const TextureDrawQuad* quad2 = TextureDrawQuad::MaterialCast( 1141 const TextureDrawQuad* quad2 =
1142 pass->quad_list[1]); 1142 TextureDrawQuad::MaterialCast(pass->quad_list.ElementAt(1));
1143 EXPECT_EQ(map.find(555)->second, quad2->resource_id); 1143 EXPECT_EQ(map.find(555)->second, quad2->resource_id);
1144 const TextureDrawQuad* quad3 = TextureDrawQuad::MaterialCast( 1144 const TextureDrawQuad* quad3 =
1145 pass->quad_list[2]); 1145 TextureDrawQuad::MaterialCast(pass->quad_list.ElementAt(2));
1146 EXPECT_EQ(map.find(444)->second, quad3->resource_id); 1146 EXPECT_EQ(map.find(444)->second, quad3->resource_id);
1147 } 1147 }
1148 1148
1149 virtual void SwapBuffersOnThread(LayerTreeHostImpl* host_impl, 1149 virtual void SwapBuffersOnThread(LayerTreeHostImpl* host_impl,
1150 bool result) OVERRIDE { 1150 bool result) OVERRIDE {
1151 ReturnUnusedResourcesFromParent(host_impl); 1151 ReturnUnusedResourcesFromParent(host_impl);
1152 } 1152 }
1153 }; 1153 };
1154 1154
1155 SINGLE_AND_MULTI_THREAD_TEST_F( 1155 SINGLE_AND_MULTI_THREAD_TEST_F(
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
1251 EXPECT_EQ(2u, map.size()); 1251 EXPECT_EQ(2u, map.size());
1252 EXPECT_EQ(1u, map.count(999)); 1252 EXPECT_EQ(1u, map.count(999));
1253 EXPECT_EQ(1u, map.count(555)); 1253 EXPECT_EQ(1u, map.count(555));
1254 1254
1255 EXPECT_EQ(2u, delegated_impl->Resources().size()); 1255 EXPECT_EQ(2u, delegated_impl->Resources().size());
1256 EXPECT_EQ(1u, delegated_impl->Resources().count(999)); 1256 EXPECT_EQ(1u, delegated_impl->Resources().count(999));
1257 EXPECT_EQ(1u, delegated_impl->Resources().count(555)); 1257 EXPECT_EQ(1u, delegated_impl->Resources().count(555));
1258 1258
1259 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0]; 1259 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0];
1260 EXPECT_EQ(2u, pass->quad_list.size()); 1260 EXPECT_EQ(2u, pass->quad_list.size());
1261 const TextureDrawQuad* quad1 = TextureDrawQuad::MaterialCast( 1261 const TextureDrawQuad* quad1 =
1262 pass->quad_list[0]); 1262 TextureDrawQuad::MaterialCast(pass->quad_list.ElementAt(0));
1263 EXPECT_EQ(map.find(999)->second, quad1->resource_id); 1263 EXPECT_EQ(map.find(999)->second, quad1->resource_id);
1264 const TextureDrawQuad* quad2 = TextureDrawQuad::MaterialCast( 1264 const TextureDrawQuad* quad2 =
1265 pass->quad_list[1]); 1265 TextureDrawQuad::MaterialCast(pass->quad_list.ElementAt(1));
1266 EXPECT_EQ(map.find(555)->second, quad2->resource_id); 1266 EXPECT_EQ(map.find(555)->second, quad2->resource_id);
1267 break; 1267 break;
1268 } 1268 }
1269 case 2: { 1269 case 2: {
1270 // We only keep resources from the last valid frame. 1270 // We only keep resources from the last valid frame.
1271 EXPECT_EQ(2u, map.size()); 1271 EXPECT_EQ(2u, map.size());
1272 EXPECT_EQ(1u, map.count(999)); 1272 EXPECT_EQ(1u, map.count(999));
1273 EXPECT_EQ(1u, map.count(555)); 1273 EXPECT_EQ(1u, map.count(555));
1274 1274
1275 EXPECT_EQ(2u, delegated_impl->Resources().size()); 1275 EXPECT_EQ(2u, delegated_impl->Resources().size());
1276 EXPECT_EQ(1u, delegated_impl->Resources().count(999)); 1276 EXPECT_EQ(1u, delegated_impl->Resources().count(999));
1277 EXPECT_EQ(1u, delegated_impl->Resources().count(555)); 1277 EXPECT_EQ(1u, delegated_impl->Resources().count(555));
1278 1278
1279 // The bad frame is dropped though, we still have the frame with 999 and 1279 // The bad frame is dropped though, we still have the frame with 999 and
1280 // 555 in it. 1280 // 555 in it.
1281 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0]; 1281 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0];
1282 EXPECT_EQ(2u, pass->quad_list.size()); 1282 EXPECT_EQ(2u, pass->quad_list.size());
1283 const TextureDrawQuad* quad1 = TextureDrawQuad::MaterialCast( 1283 const TextureDrawQuad* quad1 =
1284 pass->quad_list[0]); 1284 TextureDrawQuad::MaterialCast(pass->quad_list.ElementAt(0));
1285 EXPECT_EQ(map.find(999)->second, quad1->resource_id); 1285 EXPECT_EQ(map.find(999)->second, quad1->resource_id);
1286 const TextureDrawQuad* quad2 = TextureDrawQuad::MaterialCast( 1286 const TextureDrawQuad* quad2 =
1287 pass->quad_list[1]); 1287 TextureDrawQuad::MaterialCast(pass->quad_list.ElementAt(1));
1288 EXPECT_EQ(map.find(555)->second, quad2->resource_id); 1288 EXPECT_EQ(map.find(555)->second, quad2->resource_id);
1289 break; 1289 break;
1290 } 1290 }
1291 case 3: { 1291 case 3: {
1292 // We have the new good frame with just 999 in it. 1292 // We have the new good frame with just 999 in it.
1293 EXPECT_EQ(1u, map.size()); 1293 EXPECT_EQ(1u, map.size());
1294 EXPECT_EQ(1u, map.count(999)); 1294 EXPECT_EQ(1u, map.count(999));
1295 1295
1296 EXPECT_EQ(1u, delegated_impl->Resources().size()); 1296 EXPECT_EQ(1u, delegated_impl->Resources().size());
1297 EXPECT_EQ(1u, delegated_impl->Resources().count(999)); 1297 EXPECT_EQ(1u, delegated_impl->Resources().count(999));
1298 1298
1299 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0]; 1299 const RenderPass* pass = delegated_impl->RenderPassesInDrawOrder()[0];
1300 EXPECT_EQ(1u, pass->quad_list.size()); 1300 EXPECT_EQ(1u, pass->quad_list.size());
1301 const TextureDrawQuad* quad1 = TextureDrawQuad::MaterialCast( 1301 const TextureDrawQuad* quad1 =
1302 pass->quad_list[0]); 1302 TextureDrawQuad::MaterialCast(pass->quad_list.front());
1303 EXPECT_EQ(map.find(999)->second, quad1->resource_id); 1303 EXPECT_EQ(map.find(999)->second, quad1->resource_id);
1304 break; 1304 break;
1305 } 1305 }
1306 } 1306 }
1307 } 1307 }
1308 }; 1308 };
1309 1309
1310 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostDelegatedTestBadFrame); 1310 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostDelegatedTestBadFrame);
1311 1311
1312 class LayerTreeHostDelegatedTestUnnamedResource 1312 class LayerTreeHostDelegatedTestUnnamedResource
(...skipping 879 matching lines...) Expand 10 before | Expand all | Expand 10 after
2192 } 2192 }
2193 2193
2194 scoped_refptr<DelegatedRendererLayer> delegated_thief_; 2194 scoped_refptr<DelegatedRendererLayer> delegated_thief_;
2195 }; 2195 };
2196 2196
2197 SINGLE_AND_MULTI_THREAD_TEST_F( 2197 SINGLE_AND_MULTI_THREAD_TEST_F(
2198 LayerTreeHostDelegatedTestRemoveAndChangeResources); 2198 LayerTreeHostDelegatedTestRemoveAndChangeResources);
2199 2199
2200 } // namespace 2200 } // namespace
2201 } // namespace cc 2201 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_unittest.cc ('k') | content/common/cc_messages.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698