OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "components/mus/public/cpp/surfaces/surfaces_type_converters.h" | 5 #include "components/mus/public/cpp/surfaces/surfaces_type_converters.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <utility> | 10 #include <utility> |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
44 using mus::mojom::RenderPassIdPtr; | 44 using mus::mojom::RenderPassIdPtr; |
45 using mus::mojom::RenderPassQuadState; | 45 using mus::mojom::RenderPassQuadState; |
46 using mus::mojom::RenderPassQuadStatePtr; | 46 using mus::mojom::RenderPassQuadStatePtr; |
47 using mus::mojom::ResourceFormat; | 47 using mus::mojom::ResourceFormat; |
48 using mus::mojom::ReturnedResource; | 48 using mus::mojom::ReturnedResource; |
49 using mus::mojom::ReturnedResourcePtr; | 49 using mus::mojom::ReturnedResourcePtr; |
50 using mus::mojom::SharedQuadState; | 50 using mus::mojom::SharedQuadState; |
51 using mus::mojom::SharedQuadStatePtr; | 51 using mus::mojom::SharedQuadStatePtr; |
52 using mus::mojom::SolidColorQuadState; | 52 using mus::mojom::SolidColorQuadState; |
53 using mus::mojom::SolidColorQuadStatePtr; | 53 using mus::mojom::SolidColorQuadStatePtr; |
54 using mus::mojom::SurfaceId; | |
55 using mus::mojom::SurfaceIdPtr; | |
56 using mus::mojom::SurfaceQuadState; | 54 using mus::mojom::SurfaceQuadState; |
57 using mus::mojom::SurfaceQuadStatePtr; | 55 using mus::mojom::SurfaceQuadStatePtr; |
58 using mus::mojom::TextureQuadState; | 56 using mus::mojom::TextureQuadState; |
59 using mus::mojom::TextureQuadStatePtr; | 57 using mus::mojom::TextureQuadStatePtr; |
60 using mus::mojom::TileQuadState; | 58 using mus::mojom::TileQuadState; |
61 using mus::mojom::TileQuadStatePtr; | 59 using mus::mojom::TileQuadStatePtr; |
62 using mus::mojom::TransferableResource; | 60 using mus::mojom::TransferableResource; |
63 using mus::mojom::TransferableResourcePtr; | 61 using mus::mojom::TransferableResourcePtr; |
64 using mus::mojom::YUVColorSpace; | 62 using mus::mojom::YUVColorSpace; |
65 using mus::mojom::YUVVideoQuadState; | 63 using mus::mojom::YUVVideoQuadState; |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
167 if (input->surface_quad_state.is_null()) | 165 if (input->surface_quad_state.is_null()) |
168 return false; | 166 return false; |
169 | 167 |
170 if (custom_converter) { | 168 if (custom_converter) { |
171 return custom_converter->ConvertSurfaceDrawQuad(input, metadata, sqs, | 169 return custom_converter->ConvertSurfaceDrawQuad(input, metadata, sqs, |
172 render_pass); | 170 render_pass); |
173 } | 171 } |
174 cc::SurfaceDrawQuad* surface_quad = | 172 cc::SurfaceDrawQuad* surface_quad = |
175 render_pass->CreateAndAppendDrawQuad<cc::SurfaceDrawQuad>(); | 173 render_pass->CreateAndAppendDrawQuad<cc::SurfaceDrawQuad>(); |
176 surface_quad->SetAll( | 174 surface_quad->SetAll( |
177 sqs, | 175 sqs, input->rect.To<gfx::Rect>(), input->opaque_rect.To<gfx::Rect>(), |
178 input->rect.To<gfx::Rect>(), | 176 input->visible_rect.To<gfx::Rect>(), input->needs_blending, |
179 input->opaque_rect.To<gfx::Rect>(), | 177 input->surface_quad_state->surface); |
180 input->visible_rect.To<gfx::Rect>(), | |
181 input->needs_blending, | |
182 input->surface_quad_state->surface.To<cc::SurfaceId>()); | |
183 break; | 178 break; |
184 } | 179 } |
185 case mus::mojom::Material::TEXTURE_CONTENT: { | 180 case mus::mojom::Material::TEXTURE_CONTENT: { |
186 TextureQuadStatePtr& texture_quad_state = | 181 TextureQuadStatePtr& texture_quad_state = |
187 input->texture_quad_state; | 182 input->texture_quad_state; |
188 if (texture_quad_state.is_null() || | 183 if (texture_quad_state.is_null() || |
189 texture_quad_state->vertex_opacity.is_null() || | 184 texture_quad_state->vertex_opacity.is_null() || |
190 texture_quad_state->background_color.is_null()) | 185 texture_quad_state->background_color.is_null()) |
191 return false; | 186 return false; |
192 cc::TextureDrawQuad* texture_quad = | 187 cc::TextureDrawQuad* texture_quad = |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
246 default: | 241 default: |
247 NOTREACHED() << "Unsupported material " << input->material; | 242 NOTREACHED() << "Unsupported material " << input->material; |
248 return false; | 243 return false; |
249 } | 244 } |
250 return true; | 245 return true; |
251 } | 246 } |
252 | 247 |
253 } // namespace | 248 } // namespace |
254 | 249 |
255 // static | 250 // static |
256 SurfaceIdPtr TypeConverter<SurfaceIdPtr, cc::SurfaceId>::Convert( | |
257 const cc::SurfaceId& input) { | |
258 SurfaceIdPtr id(SurfaceId::New()); | |
259 id->id_namespace = input.id_namespace(); | |
260 id->local_id = input.local_id(); | |
261 id->nonce = input.nonce(); | |
262 return id; | |
263 } | |
264 | |
265 // static | |
266 cc::SurfaceId TypeConverter<cc::SurfaceId, SurfaceIdPtr>::Convert( | |
267 const SurfaceIdPtr& input) { | |
268 return cc::SurfaceId(input->id_namespace, input->local_id, input->nonce); | |
269 } | |
270 | |
271 // static | |
272 ColorPtr TypeConverter<ColorPtr, SkColor>::Convert(const SkColor& input) { | 251 ColorPtr TypeConverter<ColorPtr, SkColor>::Convert(const SkColor& input) { |
273 ColorPtr color(Color::New()); | 252 ColorPtr color(Color::New()); |
274 color->rgba = input; | 253 color->rgba = input; |
275 return color; | 254 return color; |
276 } | 255 } |
277 | 256 |
278 // static | 257 // static |
279 SkColor TypeConverter<SkColor, ColorPtr>::Convert(const ColorPtr& input) { | 258 SkColor TypeConverter<SkColor, ColorPtr>::Convert(const ColorPtr& input) { |
280 return input->rgba; | 259 return input->rgba; |
281 } | 260 } |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
347 color_state->force_anti_aliasing_off = | 326 color_state->force_anti_aliasing_off = |
348 color_quad->force_anti_aliasing_off; | 327 color_quad->force_anti_aliasing_off; |
349 quad->solid_color_quad_state = std::move(color_state); | 328 quad->solid_color_quad_state = std::move(color_state); |
350 break; | 329 break; |
351 } | 330 } |
352 case cc::DrawQuad::SURFACE_CONTENT: { | 331 case cc::DrawQuad::SURFACE_CONTENT: { |
353 const cc::SurfaceDrawQuad* surface_quad = | 332 const cc::SurfaceDrawQuad* surface_quad = |
354 cc::SurfaceDrawQuad::MaterialCast(&input); | 333 cc::SurfaceDrawQuad::MaterialCast(&input); |
355 SurfaceQuadStatePtr surface_state = | 334 SurfaceQuadStatePtr surface_state = |
356 SurfaceQuadState::New(); | 335 SurfaceQuadState::New(); |
357 surface_state->surface = SurfaceId::From(surface_quad->surface_id); | 336 surface_state->surface = surface_quad->surface_id; |
358 quad->surface_quad_state = std::move(surface_state); | 337 quad->surface_quad_state = std::move(surface_state); |
359 break; | 338 break; |
360 } | 339 } |
361 case cc::DrawQuad::TEXTURE_CONTENT: { | 340 case cc::DrawQuad::TEXTURE_CONTENT: { |
362 const cc::TextureDrawQuad* texture_quad = | 341 const cc::TextureDrawQuad* texture_quad = |
363 cc::TextureDrawQuad::MaterialCast(&input); | 342 cc::TextureDrawQuad::MaterialCast(&input); |
364 TextureQuadStatePtr texture_state = TextureQuadState::New(); | 343 TextureQuadStatePtr texture_state = TextureQuadState::New(); |
365 texture_state->resource_id = texture_quad->resource_id(); | 344 texture_state->resource_id = texture_quad->resource_id(); |
366 texture_state->premultiplied_alpha = texture_quad->premultiplied_alpha; | 345 texture_state->premultiplied_alpha = texture_quad->premultiplied_alpha; |
367 texture_state->uv_top_left = PointF::From(texture_quad->uv_top_left); | 346 texture_state->uv_top_left = PointF::From(texture_quad->uv_top_left); |
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
626 } | 605 } |
627 | 606 |
628 // static | 607 // static |
629 std::unique_ptr<cc::CompositorFrame> | 608 std::unique_ptr<cc::CompositorFrame> |
630 TypeConverter<std::unique_ptr<cc::CompositorFrame>, | 609 TypeConverter<std::unique_ptr<cc::CompositorFrame>, |
631 CompositorFramePtr>::Convert(const CompositorFramePtr& input) { | 610 CompositorFramePtr>::Convert(const CompositorFramePtr& input) { |
632 return ConvertToCompositorFrame(input, nullptr); | 611 return ConvertToCompositorFrame(input, nullptr); |
633 } | 612 } |
634 | 613 |
635 } // namespace mojo | 614 } // namespace mojo |
OLD | NEW |