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

Side by Side Diff: cc/delegated_renderer_layer_impl_unittest.cc

Issue 11416088: cc: Turn SharedQuadState into a struct-like class similar to DrawQuads. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix debug build Created 8 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « cc/delegated_renderer_layer_impl.cc ('k') | cc/draw_quad.h » ('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 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/delegated_renderer_layer_impl.h" 5 #include "cc/delegated_renderer_layer_impl.h"
6 6
7 #include "cc/append_quads_data.h" 7 #include "cc/append_quads_data.h"
8 #include "cc/layer_tree_host_impl.h" 8 #include "cc/layer_tree_host_impl.h"
9 #include "cc/quad_sink.h" 9 #include "cc/quad_sink.h"
10 #include "cc/render_pass_draw_quad.h" 10 #include "cc/render_pass_draw_quad.h"
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 scoped_ptr<TestRenderPass> pass(TestRenderPass::create(id, outputRect, rootT ransform)); 71 scoped_ptr<TestRenderPass> pass(TestRenderPass::create(id, outputRect, rootT ransform));
72 TestRenderPass* saved = pass.get(); 72 TestRenderPass* saved = pass.get();
73 passList.append(pass.PassAs<RenderPass>()); 73 passList.append(pass.PassAs<RenderPass>());
74 return saved; 74 return saved;
75 } 75 }
76 76
77 static SolidColorDrawQuad* addQuad(TestRenderPass* pass, gfx::Rect rect, SkColor color) 77 static SolidColorDrawQuad* addQuad(TestRenderPass* pass, gfx::Rect rect, SkColor color)
78 { 78 {
79 MockQuadCuller quadSink(pass->quadList(), pass->sharedQuadStateList()); 79 MockQuadCuller quadSink(pass->quadList(), pass->sharedQuadStateList());
80 AppendQuadsData data(pass->id()); 80 AppendQuadsData data(pass->id());
81 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: create(WebTransformationMatrix(), rect, rect, 1)); 81 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: Create());
82 sharedState->SetAll(WebTransformationMatrix(), rect, rect, 1);
82 scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::Create(); 83 scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::Create();
83 quad->SetNew(sharedState, rect, color); 84 quad->SetNew(sharedState, rect, color);
84 SolidColorDrawQuad* quadPtr = quad.get(); 85 SolidColorDrawQuad* quadPtr = quad.get();
85 quadSink.append(quad.PassAs<DrawQuad>(), data); 86 quadSink.append(quad.PassAs<DrawQuad>(), data);
86 return quadPtr; 87 return quadPtr;
87 } 88 }
88 89
89 static void addRenderPassQuad(TestRenderPass* toPass, TestRenderPass* contributi ngPass) 90 static void addRenderPassQuad(TestRenderPass* toPass, TestRenderPass* contributi ngPass)
90 { 91 {
91 MockQuadCuller quadSink(toPass->quadList(), toPass->sharedQuadStateList()); 92 MockQuadCuller quadSink(toPass->quadList(), toPass->sharedQuadStateList());
92 AppendQuadsData data(toPass->id()); 93 AppendQuadsData data(toPass->id());
93 gfx::Rect outputRect = contributingPass->outputRect(); 94 gfx::Rect outputRect = contributingPass->outputRect();
94 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: create(WebTransformationMatrix(), outputRect, outputRect, 1)); 95 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: Create());
96 sharedState->SetAll(WebTransformationMatrix(), outputRect, outputRect, 1);
95 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::Create(); 97 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::Create();
96 quad->SetNew(sharedState, outputRect, contributingPass->id(), false, 0, outp utRect, 0, 0, 0, 0); 98 quad->SetNew(sharedState, outputRect, contributingPass->id(), false, 0, outp utRect, 0, 0, 0, 0);
97 quadSink.append(quad.PassAs<DrawQuad>(), data); 99 quadSink.append(quad.PassAs<DrawQuad>(), data);
98 } 100 }
99 101
100 class DelegatedRendererLayerImplTestSimple : public DelegatedRendererLayerImplTe st { 102 class DelegatedRendererLayerImplTestSimple : public DelegatedRendererLayerImplTe st {
101 public: 103 public:
102 DelegatedRendererLayerImplTestSimple() 104 DelegatedRendererLayerImplTestSimple()
103 : DelegatedRendererLayerImplTest() 105 : DelegatedRendererLayerImplTest()
104 { 106 {
(...skipping 292 matching lines...) Expand 10 before | Expand all | Expand 10 after
397 delegatedRendererLayer->setDrawsContent(true); 399 delegatedRendererLayer->setDrawsContent(true);
398 WebTransformationMatrix transform; 400 WebTransformationMatrix transform;
399 transform.translate(10, 10); 401 transform.translate(10, 10);
400 delegatedRendererLayer->setTransform(transform); 402 delegatedRendererLayer->setTransform(transform);
401 403
402 ScopedPtrVector<RenderPass> delegatedRenderPasses; 404 ScopedPtrVector<RenderPass> delegatedRenderPasses;
403 gfx::Rect passRect(0, 0, 50, 50); 405 gfx::Rect passRect(0, 0, 50, 50);
404 TestRenderPass* pass = addRenderPass(delegatedRenderPasses, RenderPass:: Id(9, 6), passRect, WebTransformationMatrix()); 406 TestRenderPass* pass = addRenderPass(delegatedRenderPasses, RenderPass:: Id(9, 6), passRect, WebTransformationMatrix());
405 MockQuadCuller quadSink(pass->quadList(), pass->sharedQuadStateList()); 407 MockQuadCuller quadSink(pass->quadList(), pass->sharedQuadStateList());
406 AppendQuadsData data(pass->id()); 408 AppendQuadsData data(pass->id());
407 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadSta te::create(WebTransformationMatrix(), passRect, passRect, 1)); 409 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadSta te::Create());
410 sharedState->SetAll(WebTransformationMatrix(), passRect, passRect, 1);
408 scoped_ptr<SolidColorDrawQuad> colorQuad; 411 scoped_ptr<SolidColorDrawQuad> colorQuad;
409 412
410 colorQuad = SolidColorDrawQuad::Create(); 413 colorQuad = SolidColorDrawQuad::Create();
411 colorQuad->SetNew(sharedState, gfx::Rect(0, 0, 10, 10), 1u); 414 colorQuad->SetNew(sharedState, gfx::Rect(0, 0, 10, 10), 1u);
412 quadSink.append(colorQuad.PassAs<DrawQuad>(), data); 415 quadSink.append(colorQuad.PassAs<DrawQuad>(), data);
413 416
414 colorQuad = SolidColorDrawQuad::Create(); 417 colorQuad = SolidColorDrawQuad::Create();
415 colorQuad->SetNew(sharedState, gfx::Rect(0, 10, 10, 10), 2u); 418 colorQuad->SetNew(sharedState, gfx::Rect(0, 10, 10, 10), 2u);
416 quadSink.append(colorQuad.PassAs<DrawQuad>(), data); 419 quadSink.append(colorQuad.PassAs<DrawQuad>(), data);
417 420
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
455 const QuadList& quadList = frame.renderPasses[0]->quadList(); 458 const QuadList& quadList = frame.renderPasses[0]->quadList();
456 ASSERT_EQ(4u, quadList.size()); 459 ASSERT_EQ(4u, quadList.size());
457 460
458 // All quads should share the same state. 461 // All quads should share the same state.
459 const SharedQuadState* sharedState = quadList[0]->shared_quad_state; 462 const SharedQuadState* sharedState = quadList[0]->shared_quad_state;
460 EXPECT_EQ(sharedState, quadList[1]->shared_quad_state); 463 EXPECT_EQ(sharedState, quadList[1]->shared_quad_state);
461 EXPECT_EQ(sharedState, quadList[2]->shared_quad_state); 464 EXPECT_EQ(sharedState, quadList[2]->shared_quad_state);
462 EXPECT_EQ(sharedState, quadList[3]->shared_quad_state); 465 EXPECT_EQ(sharedState, quadList[3]->shared_quad_state);
463 466
464 // The state should be transformed only once. 467 // The state should be transformed only once.
465 EXPECT_RECT_EQ(gfx::Rect(30, 30, 50, 50), sharedState->clippedRectInTarget); 468 EXPECT_RECT_EQ(gfx::Rect(30, 30, 50, 50), sharedState->clipped_rect_in_targe t);
466 WebTransformationMatrix expected; 469 WebTransformationMatrix expected;
467 expected.translate(30, 30); 470 expected.translate(30, 30);
468 EXPECT_TRANSFORMATION_MATRIX_EQ(expected, sharedState->quadTransform); 471 EXPECT_TRANSFORMATION_MATRIX_EQ(expected, sharedState->content_to_target_tra nsform);
469 } 472 }
470 473
471 } // namespace 474 } // namespace
472 } // namespace cc 475 } // namespace cc
OLDNEW
« no previous file with comments | « cc/delegated_renderer_layer_impl.cc ('k') | cc/draw_quad.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698