summaryrefslogtreecommitdiffstats
path: root/cc/layers/video_layer_impl.cc
diff options
context:
space:
mode:
authordanakj <danakj@chromium.org>2015-04-24 15:19:02 -0700
committerCommit bot <commit-bot@chromium.org>2015-04-24 22:19:05 +0000
commitf942757417b8472005abc6ef62dbc18d6d1bf86e (patch)
tree0c6d975f3bf95000ffe86e832a777cbda1fc31fd /cc/layers/video_layer_impl.cc
parentf5f397bd63d605b746e3332d50a4c96258048760 (diff)
downloadchromium_src-f942757417b8472005abc6ef62dbc18d6d1bf86e.zip
chromium_src-f942757417b8472005abc6ef62dbc18d6d1bf86e.tar.gz
chromium_src-f942757417b8472005abc6ef62dbc18d6d1bf86e.tar.bz2
cc: Some more cleanup and removing TODOs for validating resources.
This adds a LayerImpl::ValidateQuadResources() that each layer can call on quads that it appends. This function is empty when DCHECKs are off, which means it should be cheap/free in release builds. R=piman@chromium.org BUG=475894 Review URL: https://codereview.chromium.org/1096703006 Cr-Commit-Position: refs/heads/master@{#326903}
Diffstat (limited to 'cc/layers/video_layer_impl.cc')
-rw-r--r--cc/layers/video_layer_impl.cc28
1 files changed, 5 insertions, 23 deletions
diff --git a/cc/layers/video_layer_impl.cc b/cc/layers/video_layer_impl.cc
index 5c36e99..5171971 100644
--- a/cc/layers/video_layer_impl.cc
+++ b/cc/layers/video_layer_impl.cc
@@ -202,9 +202,6 @@ void VideoLayerImpl::AppendQuads(RenderPass* render_pass,
float opacity[] = {1.0f, 1.0f, 1.0f, 1.0f};
bool flipped = false;
bool nearest_neighbor = false;
- // TODO(danakj): crbug.com/455931
- layer_tree_impl()->resource_provider()->ValidateResource(
- software_resources_[0]);
TextureDrawQuad* texture_quad =
render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
texture_quad->SetNew(shared_quad_state,
@@ -219,6 +216,7 @@ void VideoLayerImpl::AppendQuads(RenderPass* render_pass,
opacity,
flipped,
nearest_neighbor);
+ ValidateQuadResources(texture_quad);
break;
}
case VideoFrameExternalResources::YUV_RESOURCE: {
@@ -244,17 +242,6 @@ void VideoLayerImpl::AppendQuads(RenderPass* render_pass,
frame_->format(), media::VideoFrame::kAPlane, coded_size));
}
- // TODO(danakj): crbug.com/455931
- layer_tree_impl()->resource_provider()->ValidateResource(
- frame_resources_[0]);
- layer_tree_impl()->resource_provider()->ValidateResource(
- frame_resources_[1]);
- layer_tree_impl()->resource_provider()->ValidateResource(
- frame_resources_[2]);
- if (frame_resources_.size() > 3) {
- layer_tree_impl()->resource_provider()->ValidateResource(
- frame_resources_[3]);
- }
gfx::RectF tex_coord_rect(
tex_x_offset, tex_y_offset, tex_width_scale, tex_height_scale);
YUVVideoDrawQuad* yuv_video_quad =
@@ -264,6 +251,7 @@ void VideoLayerImpl::AppendQuads(RenderPass* render_pass,
tex_coord_rect, ya_tex_size, uv_tex_size, frame_resources_[0],
frame_resources_[1], frame_resources_[2],
frame_resources_.size() > 3 ? frame_resources_[3] : 0, color_space);
+ ValidateQuadResources(yuv_video_quad);
break;
}
case VideoFrameExternalResources::RGB_RESOURCE: {
@@ -276,9 +264,6 @@ void VideoLayerImpl::AppendQuads(RenderPass* render_pass,
float opacity[] = {1.0f, 1.0f, 1.0f, 1.0f};
bool flipped = false;
bool nearest_neighbor = false;
- // TODO(danakj): crbug.com/455931
- layer_tree_impl()->resource_provider()->ValidateResource(
- frame_resources_[0]);
TextureDrawQuad* texture_quad =
render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
texture_quad->SetNew(shared_quad_state,
@@ -293,15 +278,13 @@ void VideoLayerImpl::AppendQuads(RenderPass* render_pass,
opacity,
flipped,
nearest_neighbor);
+ ValidateQuadResources(texture_quad);
break;
}
case VideoFrameExternalResources::STREAM_TEXTURE_RESOURCE: {
DCHECK_EQ(frame_resources_.size(), 1u);
if (frame_resources_.size() < 1u)
break;
- // TODO(danakj): crbug.com/455931
- layer_tree_impl()->resource_provider()->ValidateResource(
- frame_resources_[0]);
gfx::Transform scale;
scale.Scale(tex_width_scale, tex_height_scale);
StreamVideoDrawQuad* stream_video_quad =
@@ -310,15 +293,13 @@ void VideoLayerImpl::AppendQuads(RenderPass* render_pass,
shared_quad_state, quad_rect, opaque_rect, visible_quad_rect,
frame_resources_[0],
scale * provider_client_impl_->StreamTextureMatrix());
+ ValidateQuadResources(stream_video_quad);
break;
}
case VideoFrameExternalResources::IO_SURFACE: {
DCHECK_EQ(frame_resources_.size(), 1u);
if (frame_resources_.size() < 1u)
break;
- // TODO(danakj): crbug.com/455931
- layer_tree_impl()->resource_provider()->ValidateResource(
- frame_resources_[0]);
IOSurfaceDrawQuad* io_surface_quad =
render_pass->CreateAndAppendDrawQuad<IOSurfaceDrawQuad>();
io_surface_quad->SetNew(shared_quad_state,
@@ -328,6 +309,7 @@ void VideoLayerImpl::AppendQuads(RenderPass* render_pass,
visible_rect.size(),
frame_resources_[0],
IOSurfaceDrawQuad::UNFLIPPED);
+ ValidateQuadResources(io_surface_quad);
break;
}
#if defined(VIDEO_HOLE)