Do not use MockQuadCuller when only testing with RenderPass

For unittest that only testing functionatility of Append DrawQuads and
SharedQuadState, only creates RenderPass for it.

This CL is first part of clean up QuadSink. Next step would be to use
test occlusion tracker for MockQuadSink.

BUG=
TEST=cc_unittests

Review URL: https://codereview.chromium.org/288273003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271011 0039d316-1c4b-4281-b951-d872f2087c98
parent b6dded72
......@@ -17,7 +17,6 @@
#include "cc/test/fake_rendering_stats_instrumentation.h"
#include "cc/test/geometry_test_utils.h"
#include "cc/test/layer_test_common.h"
#include "cc/test/mock_quad_culler.h"
#include "cc/test/render_pass_test_common.h"
#include "cc/test/render_pass_test_utils.h"
#include "cc/test/test_shared_bitmap_manager.h"
......@@ -529,8 +528,8 @@ class DelegatedRendererLayerImplTestTransform
RenderPass::Id(10, 7),
child_pass_rect,
gfx::Transform());
MockQuadCuller quad_sink(pass);
SharedQuadState* shared_quad_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_quad_state =
pass->CreateAndAppendSharedQuadState();
shared_quad_state->SetAll(child_pass_transform,
child_pass_content_bounds,
child_pass_rect,
......@@ -546,7 +545,7 @@ class DelegatedRendererLayerImplTestTransform
gfx::Rect(20, 20, 3, 7),
1u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
color_quad = SolidColorDrawQuad::Create();
color_quad->SetNew(shared_quad_state,
......@@ -554,7 +553,7 @@ class DelegatedRendererLayerImplTestTransform
gfx::Rect(23, 20, 4, 7),
1u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
}
gfx::Size root_pass_content_bounds(100, 100);
......@@ -570,8 +569,7 @@ class DelegatedRendererLayerImplTestTransform
RenderPass::Id(9, 6),
root_pass_rect,
gfx::Transform());
MockQuadCuller quad_sink(pass);
SharedQuadState* shared_quad_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_quad_state = pass->CreateAndAppendSharedQuadState();
shared_quad_state->SetAll(root_pass_transform,
root_pass_content_bounds,
root_pass_rect,
......@@ -593,7 +591,7 @@ class DelegatedRendererLayerImplTestTransform
gfx::RectF(), // mask_uv_rect
FilterOperations(), // filters
FilterOperations()); // background_filters
quad_sink.Append(render_pass_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(render_pass_quad.PassAs<DrawQuad>());
scoped_ptr<SolidColorDrawQuad> color_quad;
color_quad = SolidColorDrawQuad::Create();
......@@ -602,7 +600,7 @@ class DelegatedRendererLayerImplTestTransform
gfx::Rect(0, 0, 10, 10),
1u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
color_quad = SolidColorDrawQuad::Create();
color_quad->SetNew(shared_quad_state,
......@@ -610,7 +608,7 @@ class DelegatedRendererLayerImplTestTransform
gfx::Rect(0, 10, 10, 10),
2u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
color_quad = SolidColorDrawQuad::Create();
color_quad->SetNew(shared_quad_state,
......@@ -618,7 +616,7 @@ class DelegatedRendererLayerImplTestTransform
gfx::Rect(10, 0, 10, 10),
3u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
color_quad = SolidColorDrawQuad::Create();
color_quad->SetNew(shared_quad_state,
......@@ -626,7 +624,7 @@ class DelegatedRendererLayerImplTestTransform
gfx::Rect(10, 10, 10, 10),
4u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
delegated_renderer_layer->SetFrameDataForRenderPasses(
&delegated_render_passes);
......@@ -954,8 +952,8 @@ class DelegatedRendererLayerImplTestClip
RenderPass::Id(10, 7),
child_pass_rect,
gfx::Transform());
MockQuadCuller quad_sink(pass);
SharedQuadState* shared_quad_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_quad_state =
pass->CreateAndAppendSharedQuadState();
shared_quad_state->SetAll(child_pass_transform,
child_pass_content_bounds,
child_pass_rect,
......@@ -971,7 +969,7 @@ class DelegatedRendererLayerImplTestClip
gfx::Rect(20, 20, 3, 7),
1u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
color_quad = SolidColorDrawQuad::Create();
color_quad->SetNew(shared_quad_state,
......@@ -979,7 +977,7 @@ class DelegatedRendererLayerImplTestClip
gfx::Rect(23, 20, 4, 7),
1u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
}
gfx::Size root_pass_content_bounds(50, 50);
......@@ -993,8 +991,7 @@ class DelegatedRendererLayerImplTestClip
RenderPass::Id(9, 6),
root_pass_rect,
gfx::Transform());
MockQuadCuller quad_sink(pass);
SharedQuadState* shared_quad_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_quad_state = pass->CreateAndAppendSharedQuadState();
shared_quad_state->SetAll(root_pass_transform,
root_pass_content_bounds,
root_pass_rect,
......@@ -1016,7 +1013,7 @@ class DelegatedRendererLayerImplTestClip
gfx::RectF(), // mask_uv_rect
FilterOperations(), // filters
FilterOperations()); // background_filters
quad_sink.Append(render_pass_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(render_pass_quad.PassAs<DrawQuad>());
scoped_ptr<SolidColorDrawQuad> color_quad;
color_quad = SolidColorDrawQuad::Create();
......@@ -1025,7 +1022,7 @@ class DelegatedRendererLayerImplTestClip
gfx::Rect(0, 0, 10, 10),
1u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
color_quad = SolidColorDrawQuad::Create();
color_quad->SetNew(shared_quad_state,
......@@ -1033,7 +1030,7 @@ class DelegatedRendererLayerImplTestClip
gfx::Rect(0, 10, 10, 10),
2u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
color_quad = SolidColorDrawQuad::Create();
color_quad->SetNew(shared_quad_state,
......@@ -1041,7 +1038,7 @@ class DelegatedRendererLayerImplTestClip
gfx::Rect(10, 0, 10, 10),
3u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
color_quad = SolidColorDrawQuad::Create();
color_quad->SetNew(shared_quad_state,
......@@ -1049,7 +1046,7 @@ class DelegatedRendererLayerImplTestClip
gfx::Rect(10, 10, 10, 10),
4u,
false);
quad_sink.Append(color_quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(color_quad.PassAs<DrawQuad>());
delegated_renderer_layer->SetFrameDataForRenderPasses(
&delegated_render_passes);
......
......@@ -174,4 +174,8 @@ SharedQuadState* RenderPass::CreateAndAppendSharedQuadState() {
return shared_quad_state_list.back();
}
void RenderPass::AppendDrawQuad(scoped_ptr<DrawQuad> draw_quad) {
quad_list.push_back(draw_quad.Pass());
}
} // namespace cc
......@@ -89,6 +89,7 @@ class CC_EXPORT RenderPass {
scoped_ptr<base::Value> AsValue() const;
SharedQuadState* CreateAndAppendSharedQuadState();
void AppendDrawQuad(scoped_ptr<DrawQuad> draw_quad);
// Uniquely identifies the render pass in the compositor's current frame.
Id id;
......
......@@ -14,7 +14,6 @@
#include "cc/quads/solid_color_draw_quad.h"
#include "cc/quads/surface_draw_quad.h"
#include "cc/surfaces/surface.h"
#include "cc/test/mock_quad_culler.h"
#include "cc/test/render_pass_test_common.h"
#include "cc/test/render_pass_test_utils.h"
#include "testing/gtest/include/gtest/gtest.h"
......@@ -53,9 +52,8 @@ void AddTestSurfaceQuad(TestRenderPass* pass,
}
void AddTestRenderPassQuad(TestRenderPass* pass,
RenderPass::Id render_pass_id) {
MockQuadCuller quad_sink(pass);
gfx::Rect output_rect = gfx::Rect(0, 0, 5, 5);
SharedQuadState* shared_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_state = pass->CreateAndAppendSharedQuadState();
shared_state->SetAll(gfx::Transform(),
output_rect.size(),
output_rect,
......@@ -74,7 +72,7 @@ void AddTestRenderPassQuad(TestRenderPass* pass,
gfx::RectF(),
FilterOperations(),
FilterOperations());
quad_sink.Append(quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(quad.PassAs<DrawQuad>());
}
void AddQuadInPass(TestRenderPass* pass, Quad desc) {
......
......@@ -9,7 +9,6 @@
#include "cc/quads/shared_quad_state.h"
#include "cc/quads/solid_color_draw_quad.h"
#include "cc/resources/resource_provider.h"
#include "cc/test/mock_quad_culler.h"
#include "cc/test/render_pass_test_common.h"
#include "third_party/skia/include/core/SkColor.h"
#include "third_party/skia/include/core/SkImageFilter.h"
......@@ -31,8 +30,7 @@ TestRenderPass* AddRenderPass(RenderPassList* pass_list,
SolidColorDrawQuad* AddQuad(TestRenderPass* pass,
const gfx::Rect& rect,
SkColor color) {
MockQuadCuller quad_sink(pass);
SharedQuadState* shared_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_state = pass->CreateAndAppendSharedQuadState();
shared_state->SetAll(gfx::Transform(),
rect.size(),
rect,
......@@ -43,15 +41,14 @@ SolidColorDrawQuad* AddQuad(TestRenderPass* pass,
scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::Create();
quad->SetNew(shared_state, rect, rect, color, false);
SolidColorDrawQuad* quad_ptr = quad.get();
quad_sink.Append(quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(quad.PassAs<DrawQuad>());
return quad_ptr;
}
SolidColorDrawQuad* AddClippedQuad(TestRenderPass* pass,
const gfx::Rect& rect,
SkColor color) {
MockQuadCuller quad_sink(pass);
SharedQuadState* shared_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_state = pass->CreateAndAppendSharedQuadState();
shared_state->SetAll(gfx::Transform(),
rect.size(),
rect,
......@@ -62,7 +59,7 @@ SolidColorDrawQuad* AddClippedQuad(TestRenderPass* pass,
scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::Create();
quad->SetNew(shared_state, rect, rect, color, false);
SolidColorDrawQuad* quad_ptr = quad.get();
quad_sink.Append(quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(quad.PassAs<DrawQuad>());
return quad_ptr;
}
......@@ -70,22 +67,20 @@ SolidColorDrawQuad* AddTransformedQuad(TestRenderPass* pass,
const gfx::Rect& rect,
SkColor color,
const gfx::Transform& transform) {
MockQuadCuller quad_sink(pass);
SharedQuadState* shared_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_state = pass->CreateAndAppendSharedQuadState();
shared_state->SetAll(
transform, rect.size(), rect, rect, false, 1, SkXfermode::kSrcOver_Mode);
scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::Create();
quad->SetNew(shared_state, rect, rect, color, false);
SolidColorDrawQuad* quad_ptr = quad.get();
quad_sink.Append(quad.PassAs<DrawQuad>());
pass->AppendDrawQuad(quad.PassAs<DrawQuad>());
return quad_ptr;
}
void AddRenderPassQuad(TestRenderPass* to_pass,
TestRenderPass* contributing_pass) {
MockQuadCuller quad_sink(to_pass);
gfx::Rect output_rect = contributing_pass->output_rect;
SharedQuadState* shared_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_state = to_pass->CreateAndAppendSharedQuadState();
shared_state->SetAll(gfx::Transform(),
output_rect.size(),
output_rect,
......@@ -104,7 +99,7 @@ void AddRenderPassQuad(TestRenderPass* to_pass,
gfx::RectF(),
FilterOperations(),
FilterOperations());
quad_sink.Append(quad.PassAs<DrawQuad>());
to_pass->AppendDrawQuad(quad.PassAs<DrawQuad>());
}
void AddRenderPassQuad(TestRenderPass* to_pass,
......@@ -112,9 +107,8 @@ void AddRenderPassQuad(TestRenderPass* to_pass,
ResourceProvider::ResourceId mask_resource_id,
const FilterOperations& filters,
gfx::Transform transform) {
MockQuadCuller quad_sink(to_pass);
gfx::Rect output_rect = contributing_pass->output_rect;
SharedQuadState* shared_state = quad_sink.CreateSharedQuadState();
SharedQuadState* shared_state = to_pass->CreateAndAppendSharedQuadState();
shared_state->SetAll(transform,
output_rect.size(),
output_rect,
......@@ -133,7 +127,7 @@ void AddRenderPassQuad(TestRenderPass* to_pass,
gfx::RectF(),
filters,
FilterOperations());
quad_sink.Append(quad.PassAs<DrawQuad>());
to_pass->AppendDrawQuad(quad.PassAs<DrawQuad>());
}
} // namespace cc
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment