| OLD | NEW | 
|---|
| 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/quads/yuv_video_draw_quad.h" | 5 #include "cc/quads/yuv_video_draw_quad.h" | 
| 6 | 6 | 
| 7 #include "base/logging.h" | 7 #include "base/logging.h" | 
| 8 #include "base/trace_event/trace_event_argument.h" | 8 #include "base/trace_event/trace_event_argument.h" | 
| 9 #include "base/values.h" | 9 #include "base/values.h" | 
| 10 #include "cc/base/math_util.h" | 10 #include "cc/base/math_util.h" | 
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 64                               const gfx::Size& ya_tex_size, | 64                               const gfx::Size& ya_tex_size, | 
| 65                               const gfx::Size& uv_tex_size, | 65                               const gfx::Size& uv_tex_size, | 
| 66                               unsigned y_plane_resource_id, | 66                               unsigned y_plane_resource_id, | 
| 67                               unsigned u_plane_resource_id, | 67                               unsigned u_plane_resource_id, | 
| 68                               unsigned v_plane_resource_id, | 68                               unsigned v_plane_resource_id, | 
| 69                               unsigned a_plane_resource_id, | 69                               unsigned a_plane_resource_id, | 
| 70                               ColorSpace color_space, | 70                               ColorSpace color_space, | 
| 71                               const gfx::ColorSpace& video_color_space, | 71                               const gfx::ColorSpace& video_color_space, | 
| 72                               float offset, | 72                               float offset, | 
| 73                               float multiplier, | 73                               float multiplier, | 
| 74                               uint32_t bits_per_channel) { | 74                               uint32_t bits_per_channel, | 
|  | 75                               bool require_overlay) { | 
| 75   DrawQuad::SetAll(shared_quad_state, DrawQuad::YUV_VIDEO_CONTENT, rect, | 76   DrawQuad::SetAll(shared_quad_state, DrawQuad::YUV_VIDEO_CONTENT, rect, | 
| 76                    opaque_rect, visible_rect, needs_blending); | 77                    opaque_rect, visible_rect, needs_blending); | 
| 77   this->ya_tex_coord_rect = ya_tex_coord_rect; | 78   this->ya_tex_coord_rect = ya_tex_coord_rect; | 
| 78   this->uv_tex_coord_rect = uv_tex_coord_rect; | 79   this->uv_tex_coord_rect = uv_tex_coord_rect; | 
| 79   this->ya_tex_size = ya_tex_size; | 80   this->ya_tex_size = ya_tex_size; | 
| 80   this->uv_tex_size = uv_tex_size; | 81   this->uv_tex_size = uv_tex_size; | 
| 81   resources.ids[kYPlaneResourceIdIndex] = y_plane_resource_id; | 82   resources.ids[kYPlaneResourceIdIndex] = y_plane_resource_id; | 
| 82   resources.ids[kUPlaneResourceIdIndex] = u_plane_resource_id; | 83   resources.ids[kUPlaneResourceIdIndex] = u_plane_resource_id; | 
| 83   resources.ids[kVPlaneResourceIdIndex] = v_plane_resource_id; | 84   resources.ids[kVPlaneResourceIdIndex] = v_plane_resource_id; | 
| 84   resources.ids[kAPlaneResourceIdIndex] = a_plane_resource_id; | 85   resources.ids[kAPlaneResourceIdIndex] = a_plane_resource_id; | 
| 85   resources.count = resources.ids[kAPlaneResourceIdIndex] ? 4 : 3; | 86   resources.count = resources.ids[kAPlaneResourceIdIndex] ? 4 : 3; | 
| 86   this->color_space = color_space; | 87   this->color_space = color_space; | 
| 87   this->video_color_space = video_color_space; | 88   this->video_color_space = video_color_space; | 
| 88   this->resource_offset = offset; | 89   this->resource_offset = offset; | 
| 89   this->resource_multiplier = multiplier; | 90   this->resource_multiplier = multiplier; | 
| 90   this->bits_per_channel = bits_per_channel; | 91   this->bits_per_channel = bits_per_channel; | 
|  | 92   this->require_overlay = require_overlay; | 
| 91 } | 93 } | 
| 92 | 94 | 
| 93 const YUVVideoDrawQuad* YUVVideoDrawQuad::MaterialCast( | 95 const YUVVideoDrawQuad* YUVVideoDrawQuad::MaterialCast( | 
| 94     const DrawQuad* quad) { | 96     const DrawQuad* quad) { | 
| 95   DCHECK(quad->material == DrawQuad::YUV_VIDEO_CONTENT); | 97   DCHECK(quad->material == DrawQuad::YUV_VIDEO_CONTENT); | 
| 96   return static_cast<const YUVVideoDrawQuad*>(quad); | 98   return static_cast<const YUVVideoDrawQuad*>(quad); | 
| 97 } | 99 } | 
| 98 | 100 | 
| 99 void YUVVideoDrawQuad::ExtendValue( | 101 void YUVVideoDrawQuad::ExtendValue( | 
| 100     base::trace_event::TracedValue* value) const { | 102     base::trace_event::TracedValue* value) const { | 
| 101   MathUtil::AddToTracedValue("ya_tex_coord_rect", ya_tex_coord_rect, value); | 103   MathUtil::AddToTracedValue("ya_tex_coord_rect", ya_tex_coord_rect, value); | 
| 102   MathUtil::AddToTracedValue("uv_tex_coord_rect", uv_tex_coord_rect, value); | 104   MathUtil::AddToTracedValue("uv_tex_coord_rect", uv_tex_coord_rect, value); | 
| 103   MathUtil::AddToTracedValue("ya_tex_size", ya_tex_size, value); | 105   MathUtil::AddToTracedValue("ya_tex_size", ya_tex_size, value); | 
| 104   MathUtil::AddToTracedValue("uv_tex_size", uv_tex_size, value); | 106   MathUtil::AddToTracedValue("uv_tex_size", uv_tex_size, value); | 
| 105   value->SetInteger("y_plane_resource_id", | 107   value->SetInteger("y_plane_resource_id", | 
| 106                     resources.ids[kYPlaneResourceIdIndex]); | 108                     resources.ids[kYPlaneResourceIdIndex]); | 
| 107   value->SetInteger("u_plane_resource_id", | 109   value->SetInteger("u_plane_resource_id", | 
| 108                     resources.ids[kUPlaneResourceIdIndex]); | 110                     resources.ids[kUPlaneResourceIdIndex]); | 
| 109   value->SetInteger("v_plane_resource_id", | 111   value->SetInteger("v_plane_resource_id", | 
| 110                     resources.ids[kVPlaneResourceIdIndex]); | 112                     resources.ids[kVPlaneResourceIdIndex]); | 
| 111   value->SetInteger("a_plane_resource_id", | 113   value->SetInteger("a_plane_resource_id", | 
| 112                     resources.ids[kAPlaneResourceIdIndex]); | 114                     resources.ids[kAPlaneResourceIdIndex]); | 
|  | 115   value->SetBoolean("require_overlay", require_overlay); | 
| 113 } | 116 } | 
| 114 | 117 | 
| 115 }  // namespace cc | 118 }  // namespace cc | 
| OLD | NEW | 
|---|