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

Side by Side Diff: cc/delegated_renderer_layer_impl_unittest.cc

Issue 11411050: cc: Make the DrawQuad subclasses into struct-like classes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase 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.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 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 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
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(WebTransformationMatrix(), rect, rect, 1));
82 scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::create(sharedState , rect, color); 82 scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::Create();
83 quad->SetNew(sharedState, rect, color);
83 SolidColorDrawQuad* quadPtr = quad.get(); 84 SolidColorDrawQuad* quadPtr = quad.get();
84 quadSink.append(quad.PassAs<DrawQuad>(), data); 85 quadSink.append(quad.PassAs<DrawQuad>(), data);
85 return quadPtr; 86 return quadPtr;
86 } 87 }
87 88
88 static void addRenderPassQuad(TestRenderPass* toPass, TestRenderPass* contributi ngPass) 89 static void addRenderPassQuad(TestRenderPass* toPass, TestRenderPass* contributi ngPass)
89 { 90 {
90 MockQuadCuller quadSink(toPass->quadList(), toPass->sharedQuadStateList()); 91 MockQuadCuller quadSink(toPass->quadList(), toPass->sharedQuadStateList());
91 AppendQuadsData data(toPass->id()); 92 AppendQuadsData data(toPass->id());
92 gfx::Rect outputRect = contributingPass->outputRect(); 93 gfx::Rect outputRect = contributingPass->outputRect();
93 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: create(WebTransformationMatrix(), outputRect, outputRect, 1)); 94 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadState:: create(WebTransformationMatrix(), outputRect, outputRect, 1));
94 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::create(sharedState , outputRect, contributingPass->id(), false, 0, outputRect, 0, 0, 0, 0); 95 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::Create();
96 quad->SetNew(sharedState, outputRect, contributingPass->id(), false, 0, outp utRect, 0, 0, 0, 0);
95 quadSink.append(quad.PassAs<DrawQuad>(), data); 97 quadSink.append(quad.PassAs<DrawQuad>(), data);
96 } 98 }
97 99
98 class DelegatedRendererLayerImplTestSimple : public DelegatedRendererLayerImplTe st { 100 class DelegatedRendererLayerImplTestSimple : public DelegatedRendererLayerImplTe st {
99 public: 101 public:
100 DelegatedRendererLayerImplTestSimple() 102 DelegatedRendererLayerImplTestSimple()
101 : DelegatedRendererLayerImplTest() 103 : DelegatedRendererLayerImplTest()
102 { 104 {
103 scoped_ptr<LayerImpl> rootLayer = SolidColorLayerImpl::create(1).PassAs< LayerImpl>(); 105 scoped_ptr<LayerImpl> rootLayer = SolidColorLayerImpl::create(1).PassAs< LayerImpl>();
104 scoped_ptr<LayerImpl> layerBefore = SolidColorLayerImpl::create(2).PassA s<LayerImpl>(); 106 scoped_ptr<LayerImpl> layerBefore = SolidColorLayerImpl::create(2).PassA s<LayerImpl>();
(...skipping 291 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 WebTransformationMatrix transform; 398 WebTransformationMatrix transform;
397 transform.translate(10, 10); 399 transform.translate(10, 10);
398 delegatedRendererLayer->setTransform(transform); 400 delegatedRendererLayer->setTransform(transform);
399 401
400 ScopedPtrVector<RenderPass> delegatedRenderPasses; 402 ScopedPtrVector<RenderPass> delegatedRenderPasses;
401 gfx::Rect passRect(0, 0, 50, 50); 403 gfx::Rect passRect(0, 0, 50, 50);
402 TestRenderPass* pass = addRenderPass(delegatedRenderPasses, RenderPass:: Id(9, 6), passRect, WebTransformationMatrix()); 404 TestRenderPass* pass = addRenderPass(delegatedRenderPasses, RenderPass:: Id(9, 6), passRect, WebTransformationMatrix());
403 MockQuadCuller quadSink(pass->quadList(), pass->sharedQuadStateList()); 405 MockQuadCuller quadSink(pass->quadList(), pass->sharedQuadStateList());
404 AppendQuadsData data(pass->id()); 406 AppendQuadsData data(pass->id());
405 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadSta te::create(WebTransformationMatrix(), passRect, passRect, 1)); 407 SharedQuadState* sharedState = quadSink.useSharedQuadState(SharedQuadSta te::create(WebTransformationMatrix(), passRect, passRect, 1));
406 quadSink.append(SolidColorDrawQuad::create(sharedState, gfx::Rect(0, 0, 10, 10), 1u).PassAs<DrawQuad>(), data); 408 scoped_ptr<SolidColorDrawQuad> colorQuad;
407 quadSink.append(SolidColorDrawQuad::create(sharedState, gfx::Rect(0, 10, 10, 10), 2u).PassAs<DrawQuad>(), data); 409
408 quadSink.append(SolidColorDrawQuad::create(sharedState, gfx::Rect(10, 0, 10, 10), 3u).PassAs<DrawQuad>(), data); 410 colorQuad = SolidColorDrawQuad::Create();
409 quadSink.append(SolidColorDrawQuad::create(sharedState, gfx::Rect(10, 10 , 10, 10), 4u).PassAs<DrawQuad>(), data); 411 colorQuad->SetNew(sharedState, gfx::Rect(0, 0, 10, 10), 1u);
412 quadSink.append(colorQuad.PassAs<DrawQuad>(), data);
413
414 colorQuad = SolidColorDrawQuad::Create();
415 colorQuad->SetNew(sharedState, gfx::Rect(0, 10, 10, 10), 2u);
416 quadSink.append(colorQuad.PassAs<DrawQuad>(), data);
417
418 colorQuad = SolidColorDrawQuad::Create();
419 colorQuad->SetNew(sharedState, gfx::Rect(10, 0, 10, 10), 3u);
420 quadSink.append(colorQuad.PassAs<DrawQuad>(), data);
421
422 colorQuad = SolidColorDrawQuad::Create();
423 colorQuad->SetNew(sharedState, gfx::Rect(10, 10, 10, 10), 4u);
424 quadSink.append(colorQuad.PassAs<DrawQuad>(), data);
425
410 delegatedRendererLayer->setRenderPasses(delegatedRenderPasses); 426 delegatedRendererLayer->setRenderPasses(delegatedRenderPasses);
411 427
412 // The RenderPasses should be taken by the layer. 428 // The RenderPasses should be taken by the layer.
413 EXPECT_EQ(0u, delegatedRenderPasses.size()); 429 EXPECT_EQ(0u, delegatedRenderPasses.size());
414 430
415 m_rootLayerPtr = rootLayer.get(); 431 m_rootLayerPtr = rootLayer.get();
416 m_delegatedRendererLayerPtr = delegatedRendererLayer.get(); 432 m_delegatedRendererLayerPtr = delegatedRendererLayer.get();
417 433
418 rootLayer->addChild(delegatedRendererLayer.PassAs<LayerImpl>()); 434 rootLayer->addChild(delegatedRendererLayer.PassAs<LayerImpl>());
419 435
(...skipping 27 matching lines...) Expand all
447 463
448 // The state should be transformed only once. 464 // The state should be transformed only once.
449 EXPECT_RECT_EQ(gfx::Rect(30, 30, 50, 50), sharedState->clippedRectInTarget); 465 EXPECT_RECT_EQ(gfx::Rect(30, 30, 50, 50), sharedState->clippedRectInTarget);
450 WebTransformationMatrix expected; 466 WebTransformationMatrix expected;
451 expected.translate(30, 30); 467 expected.translate(30, 30);
452 EXPECT_TRANSFORMATION_MATRIX_EQ(expected, sharedState->quadTransform); 468 EXPECT_TRANSFORMATION_MATRIX_EQ(expected, sharedState->quadTransform);
453 } 469 }
454 470
455 } // namespace 471 } // namespace
456 } // namespace cc 472 } // namespace cc
OLDNEW
« no previous file with comments | « cc/delegated_renderer_layer_impl.cc ('k') | cc/draw_quad.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698