Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(18)

Side by Side Diff: cc/ipc/cc_param_traits.cc

Issue 2873593002: Force use of and cache render surface. (Closed)
Patch Set: Fix for patch 1. Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | cc/layers/layer.h » ('j') | cc/quads/render_pass.h » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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"
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after
323 323
324 void ParamTraits<cc::RenderPass>::Write(base::Pickle* m, const param_type& p) { 324 void ParamTraits<cc::RenderPass>::Write(base::Pickle* m, const param_type& p) {
325 WriteParam(m, p.id); 325 WriteParam(m, p.id);
326 WriteParam(m, p.output_rect); 326 WriteParam(m, p.output_rect);
327 WriteParam(m, p.damage_rect); 327 WriteParam(m, p.damage_rect);
328 WriteParam(m, p.transform_to_root_target); 328 WriteParam(m, p.transform_to_root_target);
329 WriteParam(m, p.filters); 329 WriteParam(m, p.filters);
330 WriteParam(m, p.background_filters); 330 WriteParam(m, p.background_filters);
331 WriteParam(m, p.color_space); 331 WriteParam(m, p.color_space);
332 WriteParam(m, p.has_transparent_background); 332 WriteParam(m, p.has_transparent_background);
333 WriteParam(m, p.force_render_surface);
333 WriteParam(m, base::checked_cast<uint32_t>(p.quad_list.size())); 334 WriteParam(m, base::checked_cast<uint32_t>(p.quad_list.size()));
334 335
335 cc::SharedQuadStateList::ConstIterator shared_quad_state_iter = 336 cc::SharedQuadStateList::ConstIterator shared_quad_state_iter =
336 p.shared_quad_state_list.begin(); 337 p.shared_quad_state_list.begin();
337 cc::SharedQuadStateList::ConstIterator last_shared_quad_state_iter = 338 cc::SharedQuadStateList::ConstIterator last_shared_quad_state_iter =
338 p.shared_quad_state_list.end(); 339 p.shared_quad_state_list.end();
339 for (auto* quad : p.quad_list) { 340 for (auto* quad : p.quad_list) {
340 DCHECK(quad->rect.Contains(quad->visible_rect)) 341 DCHECK(quad->rect.Contains(quad->visible_rect))
341 << quad->material << " rect: " << quad->rect.ToString() 342 << quad->material << " rect: " << quad->rect.ToString()
342 << " visible_rect: " << quad->visible_rect.ToString(); 343 << " visible_rect: " << quad->visible_rect.ToString();
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
434 base::PickleIterator* iter, 435 base::PickleIterator* iter,
435 param_type* p) { 436 param_type* p) {
436 int id; 437 int id;
437 gfx::Rect output_rect; 438 gfx::Rect output_rect;
438 gfx::Rect damage_rect; 439 gfx::Rect damage_rect;
439 gfx::Transform transform_to_root_target; 440 gfx::Transform transform_to_root_target;
440 cc::FilterOperations filters; 441 cc::FilterOperations filters;
441 cc::FilterOperations background_filters; 442 cc::FilterOperations background_filters;
442 gfx::ColorSpace color_space; 443 gfx::ColorSpace color_space;
443 bool has_transparent_background; 444 bool has_transparent_background;
445 bool force_render_surface;
444 uint32_t quad_list_size; 446 uint32_t quad_list_size;
445 447
446 if (!ReadParam(m, iter, &id) || !ReadParam(m, iter, &output_rect) || 448 if (!ReadParam(m, iter, &id) || !ReadParam(m, iter, &output_rect) ||
447 !ReadParam(m, iter, &damage_rect) || 449 !ReadParam(m, iter, &damage_rect) ||
448 !ReadParam(m, iter, &transform_to_root_target) || 450 !ReadParam(m, iter, &transform_to_root_target) ||
449 !ReadParam(m, iter, &filters) || 451 !ReadParam(m, iter, &filters) ||
450 !ReadParam(m, iter, &background_filters) || 452 !ReadParam(m, iter, &background_filters) ||
451 !ReadParam(m, iter, &color_space) || 453 !ReadParam(m, iter, &color_space) ||
452 !ReadParam(m, iter, &has_transparent_background) || 454 !ReadParam(m, iter, &has_transparent_background) ||
455 !ReadParam(m, iter, &force_render_surface) ||
453 !ReadParam(m, iter, &quad_list_size)) 456 !ReadParam(m, iter, &quad_list_size))
454 return false; 457 return false;
455 458
456 p->SetAll(id, output_rect, damage_rect, transform_to_root_target, filters, 459 p->SetAll(id, output_rect, damage_rect, transform_to_root_target, filters,
457 background_filters, color_space, has_transparent_background); 460 background_filters, color_space, has_transparent_background,
461 force_render_surface);
458 462
459 cc::DrawQuad* last_draw_quad = nullptr; 463 cc::DrawQuad* last_draw_quad = nullptr;
460 for (uint32_t i = 0; i < quad_list_size; ++i) { 464 for (uint32_t i = 0; i < quad_list_size; ++i) {
461 cc::DrawQuad::Material material; 465 cc::DrawQuad::Material material;
462 base::PickleIterator temp_iter = *iter; 466 base::PickleIterator temp_iter = *iter;
463 if (!ReadParam(m, &temp_iter, &material)) 467 if (!ReadParam(m, &temp_iter, &material))
464 return false; 468 return false;
465 469
466 cc::DrawQuad* draw_quad = nullptr; 470 cc::DrawQuad* draw_quad = nullptr;
467 switch (material) { 471 switch (material) {
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
562 LogParam(p.transform_to_root_target, l); 566 LogParam(p.transform_to_root_target, l);
563 l->append(", "); 567 l->append(", ");
564 LogParam(p.filters, l); 568 LogParam(p.filters, l);
565 l->append(", "); 569 l->append(", ");
566 LogParam(p.background_filters, l); 570 LogParam(p.background_filters, l);
567 l->append(", "); 571 l->append(", ");
568 LogParam(p.color_space, l); 572 LogParam(p.color_space, l);
569 l->append(", "); 573 l->append(", ");
570 LogParam(p.has_transparent_background, l); 574 LogParam(p.has_transparent_background, l);
571 l->append(", "); 575 l->append(", ");
576 LogParam(p.force_render_surface, l);
577 l->append(", ");
572 578
573 l->append("["); 579 l->append("[");
574 for (auto* shared_quad_state : p.shared_quad_state_list) { 580 for (auto* shared_quad_state : p.shared_quad_state_list) {
575 if (shared_quad_state != p.shared_quad_state_list.front()) 581 if (shared_quad_state != p.shared_quad_state_list.front())
576 l->append(", "); 582 l->append(", ");
577 LogParam(*shared_quad_state, l); 583 LogParam(*shared_quad_state, l);
578 } 584 }
579 l->append("], ["); 585 l->append("], [");
580 for (auto* quad : p.quad_list) { 586 for (auto* quad : p.quad_list) {
581 if (quad != p.quad_list.front()) 587 if (quad != p.quad_list.front())
(...skipping 434 matching lines...) Expand 10 before | Expand all | Expand 10 after
1016 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ 1022 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_
1017 #include "cc/ipc/cc_param_traits_macros.h" 1023 #include "cc/ipc/cc_param_traits_macros.h"
1018 } // namespace IPC 1024 } // namespace IPC
1019 1025
1020 // Generate param traits log methods. 1026 // Generate param traits log methods.
1021 #include "ipc/param_traits_log_macros.h" 1027 #include "ipc/param_traits_log_macros.h"
1022 namespace IPC { 1028 namespace IPC {
1023 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_ 1029 #undef CC_IPC_CC_PARAM_TRAITS_MACROS_H_
1024 #include "cc/ipc/cc_param_traits_macros.h" 1030 #include "cc/ipc/cc_param_traits_macros.h"
1025 } // namespace IPC 1031 } // namespace IPC
OLDNEW
« no previous file with comments | « no previous file | cc/layers/layer.h » ('j') | cc/quads/render_pass.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698