| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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/ipc/cc_param_traits.h" | 5 #include "cc/ipc/cc_param_traits.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/numerics/safe_conversions.h" | 10 #include "base/numerics/safe_conversions.h" |
| 11 #include "base/time/time.h" | 11 #include "base/time/time.h" |
| 12 #include "cc/output/compositor_frame.h" | 12 #include "cc/output/compositor_frame.h" |
| 13 #include "cc/output/filter_operations.h" | 13 #include "cc/output/filter_operations.h" |
| 14 #include "cc/quads/debug_border_draw_quad.h" | 14 #include "cc/quads/debug_border_draw_quad.h" |
| 15 #include "cc/quads/draw_quad.h" | 15 #include "cc/quads/draw_quad.h" |
| 16 #include "cc/quads/io_surface_draw_quad.h" | |
| 17 #include "cc/quads/largest_draw_quad.h" | 16 #include "cc/quads/largest_draw_quad.h" |
| 18 #include "cc/quads/render_pass_draw_quad.h" | 17 #include "cc/quads/render_pass_draw_quad.h" |
| 19 #include "cc/quads/solid_color_draw_quad.h" | 18 #include "cc/quads/solid_color_draw_quad.h" |
| 20 #include "cc/quads/surface_draw_quad.h" | 19 #include "cc/quads/surface_draw_quad.h" |
| 21 #include "cc/quads/tile_draw_quad.h" | 20 #include "cc/quads/tile_draw_quad.h" |
| 22 #include "cc/quads/yuv_video_draw_quad.h" | 21 #include "cc/quads/yuv_video_draw_quad.h" |
| 23 #include "third_party/skia/include/core/SkData.h" | 22 #include "third_party/skia/include/core/SkData.h" |
| 24 #include "third_party/skia/include/core/SkFlattenableSerialization.h" | 23 #include "third_party/skia/include/core/SkFlattenableSerialization.h" |
| 25 #include "third_party/skia/include/core/SkImageFilter.h" | 24 #include "third_party/skia/include/core/SkImageFilter.h" |
| 26 #include "third_party/skia/include/core/SkRefCnt.h" | 25 #include "third_party/skia/include/core/SkRefCnt.h" |
| (...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 337 << " visible_rect: " << quad->visible_rect.ToString(); | 336 << " visible_rect: " << quad->visible_rect.ToString(); |
| 338 DCHECK(quad->opaque_rect.IsEmpty() || | 337 DCHECK(quad->opaque_rect.IsEmpty() || |
| 339 quad->rect.Contains(quad->opaque_rect)) | 338 quad->rect.Contains(quad->opaque_rect)) |
| 340 << quad->material << " rect: " << quad->rect.ToString() | 339 << quad->material << " rect: " << quad->rect.ToString() |
| 341 << " opaque_rect: " << quad->opaque_rect.ToString(); | 340 << " opaque_rect: " << quad->opaque_rect.ToString(); |
| 342 | 341 |
| 343 switch (quad->material) { | 342 switch (quad->material) { |
| 344 case cc::DrawQuad::DEBUG_BORDER: | 343 case cc::DrawQuad::DEBUG_BORDER: |
| 345 WriteParam(m, *cc::DebugBorderDrawQuad::MaterialCast(quad)); | 344 WriteParam(m, *cc::DebugBorderDrawQuad::MaterialCast(quad)); |
| 346 break; | 345 break; |
| 347 case cc::DrawQuad::IO_SURFACE_CONTENT: | |
| 348 WriteParam(m, *cc::IOSurfaceDrawQuad::MaterialCast(quad)); | |
| 349 break; | |
| 350 case cc::DrawQuad::PICTURE_CONTENT: | 346 case cc::DrawQuad::PICTURE_CONTENT: |
| 351 NOTREACHED(); | 347 NOTREACHED(); |
| 352 break; | 348 break; |
| 353 case cc::DrawQuad::TEXTURE_CONTENT: | 349 case cc::DrawQuad::TEXTURE_CONTENT: |
| 354 WriteParam(m, *cc::TextureDrawQuad::MaterialCast(quad)); | 350 WriteParam(m, *cc::TextureDrawQuad::MaterialCast(quad)); |
| 355 break; | 351 break; |
| 356 case cc::DrawQuad::RENDER_PASS: | 352 case cc::DrawQuad::RENDER_PASS: |
| 357 WriteParam(m, *cc::RenderPassDrawQuad::MaterialCast(quad)); | 353 WriteParam(m, *cc::RenderPassDrawQuad::MaterialCast(quad)); |
| 358 break; | 354 break; |
| 359 case cc::DrawQuad::SOLID_COLOR: | 355 case cc::DrawQuad::SOLID_COLOR: |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 445 cc::DrawQuad::Material material; | 441 cc::DrawQuad::Material material; |
| 446 base::PickleIterator temp_iter = *iter; | 442 base::PickleIterator temp_iter = *iter; |
| 447 if (!ReadParam(m, &temp_iter, &material)) | 443 if (!ReadParam(m, &temp_iter, &material)) |
| 448 return false; | 444 return false; |
| 449 | 445 |
| 450 cc::DrawQuad* draw_quad = NULL; | 446 cc::DrawQuad* draw_quad = NULL; |
| 451 switch (material) { | 447 switch (material) { |
| 452 case cc::DrawQuad::DEBUG_BORDER: | 448 case cc::DrawQuad::DEBUG_BORDER: |
| 453 draw_quad = ReadDrawQuad<cc::DebugBorderDrawQuad>(m, iter, p); | 449 draw_quad = ReadDrawQuad<cc::DebugBorderDrawQuad>(m, iter, p); |
| 454 break; | 450 break; |
| 455 case cc::DrawQuad::IO_SURFACE_CONTENT: | |
| 456 draw_quad = ReadDrawQuad<cc::IOSurfaceDrawQuad>(m, iter, p); | |
| 457 break; | |
| 458 case cc::DrawQuad::PICTURE_CONTENT: | 451 case cc::DrawQuad::PICTURE_CONTENT: |
| 459 NOTREACHED(); | 452 NOTREACHED(); |
| 460 return false; | 453 return false; |
| 461 case cc::DrawQuad::SURFACE_CONTENT: | 454 case cc::DrawQuad::SURFACE_CONTENT: |
| 462 draw_quad = ReadDrawQuad<cc::SurfaceDrawQuad>(m, iter, p); | 455 draw_quad = ReadDrawQuad<cc::SurfaceDrawQuad>(m, iter, p); |
| 463 break; | 456 break; |
| 464 case cc::DrawQuad::TEXTURE_CONTENT: | 457 case cc::DrawQuad::TEXTURE_CONTENT: |
| 465 draw_quad = ReadDrawQuad<cc::TextureDrawQuad>(m, iter, p); | 458 draw_quad = ReadDrawQuad<cc::TextureDrawQuad>(m, iter, p); |
| 466 break; | 459 break; |
| 467 case cc::DrawQuad::RENDER_PASS: | 460 case cc::DrawQuad::RENDER_PASS: |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 535 LogParam(*shared_quad_state, l); | 528 LogParam(*shared_quad_state, l); |
| 536 } | 529 } |
| 537 l->append("], ["); | 530 l->append("], ["); |
| 538 for (const auto& quad : p.quad_list) { | 531 for (const auto& quad : p.quad_list) { |
| 539 if (quad != p.quad_list.front()) | 532 if (quad != p.quad_list.front()) |
| 540 l->append(", "); | 533 l->append(", "); |
| 541 switch (quad->material) { | 534 switch (quad->material) { |
| 542 case cc::DrawQuad::DEBUG_BORDER: | 535 case cc::DrawQuad::DEBUG_BORDER: |
| 543 LogParam(*cc::DebugBorderDrawQuad::MaterialCast(quad), l); | 536 LogParam(*cc::DebugBorderDrawQuad::MaterialCast(quad), l); |
| 544 break; | 537 break; |
| 545 case cc::DrawQuad::IO_SURFACE_CONTENT: | |
| 546 LogParam(*cc::IOSurfaceDrawQuad::MaterialCast(quad), l); | |
| 547 break; | |
| 548 case cc::DrawQuad::PICTURE_CONTENT: | 538 case cc::DrawQuad::PICTURE_CONTENT: |
| 549 NOTREACHED(); | 539 NOTREACHED(); |
| 550 break; | 540 break; |
| 551 case cc::DrawQuad::TEXTURE_CONTENT: | 541 case cc::DrawQuad::TEXTURE_CONTENT: |
| 552 LogParam(*cc::TextureDrawQuad::MaterialCast(quad), l); | 542 LogParam(*cc::TextureDrawQuad::MaterialCast(quad), l); |
| 553 break; | 543 break; |
| 554 case cc::DrawQuad::RENDER_PASS: | 544 case cc::DrawQuad::RENDER_PASS: |
| 555 LogParam(*cc::RenderPassDrawQuad::MaterialCast(quad), l); | 545 LogParam(*cc::RenderPassDrawQuad::MaterialCast(quad), l); |
| 556 break; | 546 break; |
| 557 case cc::DrawQuad::SOLID_COLOR: | 547 case cc::DrawQuad::SOLID_COLOR: |
| (...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 915 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ | 905 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ |
| 916 #include "cc/ipc/cc_param_traits_macros.h" | 906 #include "cc/ipc/cc_param_traits_macros.h" |
| 917 } // namespace IPC | 907 } // namespace IPC |
| 918 | 908 |
| 919 // Generate param traits log methods. | 909 // Generate param traits log methods. |
| 920 #include "ipc/param_traits_log_macros.h" | 910 #include "ipc/param_traits_log_macros.h" |
| 921 namespace IPC { | 911 namespace IPC { |
| 922 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ | 912 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ |
| 923 #include "cc/ipc/cc_param_traits_macros.h" | 913 #include "cc/ipc/cc_param_traits_macros.h" |
| 924 } // namespace IPC | 914 } // namespace IPC |
| OLD | NEW |