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

Unified Diff: cc/test/render_pass_test_common.cc

Issue 411643002: Early wait on texture resource sync points in gl_renderer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Move WaitOnResourceSyncPoints to gl_renderer. Add mailbox test for gl_renderer. Created 6 years, 4 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 side-by-side diff with in-line comments
Download patch
« cc/test/render_pass_test_common.h ('K') | « cc/test/render_pass_test_common.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/test/render_pass_test_common.cc
diff --git a/cc/test/render_pass_test_common.cc b/cc/test/render_pass_test_common.cc
index 8e81320fb795b1f73ccee361205c688cdd145718..89b0604c008962a9afcd48461da13b4f23d4d02d 100644
--- a/cc/test/render_pass_test_common.cc
+++ b/cc/test/render_pass_test_common.cc
@@ -4,6 +4,7 @@
#include "cc/test/render_pass_test_common.h"
+#include "base/bind.h"
#include "cc/quads/checkerboard_draw_quad.h"
#include "cc/quads/debug_border_draw_quad.h"
#include "cc/quads/io_surface_draw_quad.h"
@@ -19,6 +20,9 @@
namespace cc {
+static void EmptyReleaseCallback(uint32 sync_point, bool lost_resource) {
+}
+
void TestRenderPass::AppendOneOfEveryQuadType(
ResourceProvider* resource_provider,
RenderPass::Id child_pass) {
@@ -26,6 +30,7 @@ void TestRenderPass::AppendOneOfEveryQuadType(
gfx::Rect opaque_rect(10, 10, 80, 80);
gfx::Rect visible_rect(0, 0, 100, 100);
const float vertex_opacity[] = {1.0f, 1.0f, 1.0f, 1.0f};
+
ResourceProvider::ResourceId resource1 = resource_provider->CreateResource(
gfx::Size(45, 5),
GL_CLAMP_TO_EDGE,
@@ -69,6 +74,17 @@ void TestRenderPass::AppendOneOfEveryQuadType(
resource_provider->best_texture_format());
resource_provider->AllocateForTesting(resource7);
+ unsigned target = GL_TEXTURE_2D;
+ gpu::Mailbox gpu_mailbox;
+ memcpy(gpu_mailbox.name, "Hello world", strlen("Hello world") + 1);
+ scoped_ptr<SingleReleaseCallback> callback =
+ SingleReleaseCallback::Create(base::Bind(&EmptyReleaseCallback));
+ TextureMailbox mailbox(gpu_mailbox, target, kTestSyncPoint);
+ ResourceProvider::ResourceId resource8 =
+ resource_provider->CreateResourceFromTextureMailbox(mailbox,
+ callback.Pass());
+ resource_provider->AllocateForTesting(resource8);
+
SharedQuadState* shared_state = this->CreateAndAppendSharedQuadState();
shared_state->SetAll(gfx::Transform(),
rect.size(),
@@ -151,6 +167,20 @@ void TestRenderPass::AppendOneOfEveryQuadType(
vertex_opacity,
false);
+ TextureDrawQuad* mailbox_texture_quad =
+ this->CreateAndAppendDrawQuad<TextureDrawQuad>();
+ mailbox_texture_quad->SetNew(shared_state,
+ rect,
+ opaque_rect,
+ visible_rect,
+ resource8,
+ false,
+ gfx::PointF(0.f, 0.f),
+ gfx::PointF(1.f, 1.f),
+ SK_ColorTRANSPARENT,
+ vertex_opacity,
+ false);
+
TileDrawQuad* scaled_tile_quad =
this->CreateAndAppendDrawQuad<TileDrawQuad>();
scaled_tile_quad->SetNew(shared_state,
« cc/test/render_pass_test_common.h ('K') | « cc/test/render_pass_test_common.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698