| 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 311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 338 << " visible_rect: " << quad->visible_rect.ToString(); | 337 << " visible_rect: " << quad->visible_rect.ToString(); |
| 339 DCHECK(quad->opaque_rect.IsEmpty() || | 338 DCHECK(quad->opaque_rect.IsEmpty() || |
| 340 quad->rect.Contains(quad->opaque_rect)) | 339 quad->rect.Contains(quad->opaque_rect)) |
| 341 << quad->material << " rect: " << quad->rect.ToString() | 340 << quad->material << " rect: " << quad->rect.ToString() |
| 342 << " opaque_rect: " << quad->opaque_rect.ToString(); | 341 << " opaque_rect: " << quad->opaque_rect.ToString(); |
| 343 | 342 |
| 344 switch (quad->material) { | 343 switch (quad->material) { |
| 345 case cc::DrawQuad::DEBUG_BORDER: | 344 case cc::DrawQuad::DEBUG_BORDER: |
| 346 WriteParam(m, *cc::DebugBorderDrawQuad::MaterialCast(quad)); | 345 WriteParam(m, *cc::DebugBorderDrawQuad::MaterialCast(quad)); |
| 347 break; | 346 break; |
| 348 case cc::DrawQuad::IO_SURFACE_CONTENT: | |
| 349 WriteParam(m, *cc::IOSurfaceDrawQuad::MaterialCast(quad)); | |
| 350 break; | |
| 351 case cc::DrawQuad::PICTURE_CONTENT: | 347 case cc::DrawQuad::PICTURE_CONTENT: |
| 352 NOTREACHED(); | 348 NOTREACHED(); |
| 353 break; | 349 break; |
| 354 case cc::DrawQuad::TEXTURE_CONTENT: | 350 case cc::DrawQuad::TEXTURE_CONTENT: |
| 355 WriteParam(m, *cc::TextureDrawQuad::MaterialCast(quad)); | 351 WriteParam(m, *cc::TextureDrawQuad::MaterialCast(quad)); |
| 356 break; | 352 break; |
| 357 case cc::DrawQuad::RENDER_PASS: | 353 case cc::DrawQuad::RENDER_PASS: |
| 358 WriteParam(m, *cc::RenderPassDrawQuad::MaterialCast(quad)); | 354 WriteParam(m, *cc::RenderPassDrawQuad::MaterialCast(quad)); |
| 359 break; | 355 break; |
| 360 case cc::DrawQuad::SOLID_COLOR: | 356 case cc::DrawQuad::SOLID_COLOR: |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 446 cc::DrawQuad::Material material; | 442 cc::DrawQuad::Material material; |
| 447 base::PickleIterator temp_iter = *iter; | 443 base::PickleIterator temp_iter = *iter; |
| 448 if (!ReadParam(m, &temp_iter, &material)) | 444 if (!ReadParam(m, &temp_iter, &material)) |
| 449 return false; | 445 return false; |
| 450 | 446 |
| 451 cc::DrawQuad* draw_quad = NULL; | 447 cc::DrawQuad* draw_quad = NULL; |
| 452 switch (material) { | 448 switch (material) { |
| 453 case cc::DrawQuad::DEBUG_BORDER: | 449 case cc::DrawQuad::DEBUG_BORDER: |
| 454 draw_quad = ReadDrawQuad<cc::DebugBorderDrawQuad>(m, iter, p); | 450 draw_quad = ReadDrawQuad<cc::DebugBorderDrawQuad>(m, iter, p); |
| 455 break; | 451 break; |
| 456 case cc::DrawQuad::IO_SURFACE_CONTENT: | |
| 457 draw_quad = ReadDrawQuad<cc::IOSurfaceDrawQuad>(m, iter, p); | |
| 458 break; | |
| 459 case cc::DrawQuad::PICTURE_CONTENT: | 452 case cc::DrawQuad::PICTURE_CONTENT: |
| 460 NOTREACHED(); | 453 NOTREACHED(); |
| 461 return false; | 454 return false; |
| 462 case cc::DrawQuad::SURFACE_CONTENT: | 455 case cc::DrawQuad::SURFACE_CONTENT: |
| 463 draw_quad = ReadDrawQuad<cc::SurfaceDrawQuad>(m, iter, p); | 456 draw_quad = ReadDrawQuad<cc::SurfaceDrawQuad>(m, iter, p); |
| 464 break; | 457 break; |
| 465 case cc::DrawQuad::TEXTURE_CONTENT: | 458 case cc::DrawQuad::TEXTURE_CONTENT: |
| 466 draw_quad = ReadDrawQuad<cc::TextureDrawQuad>(m, iter, p); | 459 draw_quad = ReadDrawQuad<cc::TextureDrawQuad>(m, iter, p); |
| 467 break; | 460 break; |
| 468 case cc::DrawQuad::RENDER_PASS: | 461 case cc::DrawQuad::RENDER_PASS: |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 536 LogParam(*shared_quad_state, l); | 529 LogParam(*shared_quad_state, l); |
| 537 } | 530 } |
| 538 l->append("], ["); | 531 l->append("], ["); |
| 539 for (const auto& quad : p.quad_list) { | 532 for (const auto& quad : p.quad_list) { |
| 540 if (quad != p.quad_list.front()) | 533 if (quad != p.quad_list.front()) |
| 541 l->append(", "); | 534 l->append(", "); |
| 542 switch (quad->material) { | 535 switch (quad->material) { |
| 543 case cc::DrawQuad::DEBUG_BORDER: | 536 case cc::DrawQuad::DEBUG_BORDER: |
| 544 LogParam(*cc::DebugBorderDrawQuad::MaterialCast(quad), l); | 537 LogParam(*cc::DebugBorderDrawQuad::MaterialCast(quad), l); |
| 545 break; | 538 break; |
| 546 case cc::DrawQuad::IO_SURFACE_CONTENT: | |
| 547 LogParam(*cc::IOSurfaceDrawQuad::MaterialCast(quad), l); | |
| 548 break; | |
| 549 case cc::DrawQuad::PICTURE_CONTENT: | 539 case cc::DrawQuad::PICTURE_CONTENT: |
| 550 NOTREACHED(); | 540 NOTREACHED(); |
| 551 break; | 541 break; |
| 552 case cc::DrawQuad::TEXTURE_CONTENT: | 542 case cc::DrawQuad::TEXTURE_CONTENT: |
| 553 LogParam(*cc::TextureDrawQuad::MaterialCast(quad), l); | 543 LogParam(*cc::TextureDrawQuad::MaterialCast(quad), l); |
| 554 break; | 544 break; |
| 555 case cc::DrawQuad::RENDER_PASS: | 545 case cc::DrawQuad::RENDER_PASS: |
| 556 LogParam(*cc::RenderPassDrawQuad::MaterialCast(quad), l); | 546 LogParam(*cc::RenderPassDrawQuad::MaterialCast(quad), l); |
| 557 break; | 547 break; |
| 558 case cc::DrawQuad::SOLID_COLOR: | 548 case cc::DrawQuad::SOLID_COLOR: |
| (...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 916 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ | 906 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ |
| 917 #include "cc/ipc/cc_param_traits_macros.h" | 907 #include "cc/ipc/cc_param_traits_macros.h" |
| 918 } // namespace IPC | 908 } // namespace IPC |
| 919 | 909 |
| 920 // Generate param traits log methods. | 910 // Generate param traits log methods. |
| 921 #include "ipc/param_traits_log_macros.h" | 911 #include "ipc/param_traits_log_macros.h" |
| 922 namespace IPC { | 912 namespace IPC { |
| 923 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ | 913 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ |
| 924 #include "cc/ipc/cc_param_traits_macros.h" | 914 #include "cc/ipc/cc_param_traits_macros.h" |
| 925 } // namespace IPC | 915 } // namespace IPC |
| OLD | NEW |