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

Side by Side Diff: content/common/cc_messages.cc

Issue 1475643006: Revert of List all child surfaces (including occluded) in CompositorFrame (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years 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 | « content/common/cc_messages.h ('k') | content/common/cc_messages_unittest.cc » ('j') | no next file with comments »
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 "content/common/cc_messages.h" 5 #include "content/common/cc_messages.h"
6 6
7 #include "cc/output/compositor_frame.h" 7 #include "cc/output/compositor_frame.h"
8 #include "cc/output/filter_operations.h" 8 #include "cc/output/filter_operations.h"
9 #include "cc/quads/draw_quad.h" 9 #include "cc/quads/draw_quad.h"
10 #include "cc/quads/largest_draw_quad.h" 10 #include "cc/quads/largest_draw_quad.h"
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after
293 l->append(") "); 293 l->append(") ");
294 } 294 }
295 295
296 void ParamTraits<cc::RenderPass>::Write( 296 void ParamTraits<cc::RenderPass>::Write(
297 Message* m, const param_type& p) { 297 Message* m, const param_type& p) {
298 WriteParam(m, p.id); 298 WriteParam(m, p.id);
299 WriteParam(m, p.output_rect); 299 WriteParam(m, p.output_rect);
300 WriteParam(m, p.damage_rect); 300 WriteParam(m, p.damage_rect);
301 WriteParam(m, p.transform_to_root_target); 301 WriteParam(m, p.transform_to_root_target);
302 WriteParam(m, p.has_transparent_background); 302 WriteParam(m, p.has_transparent_background);
303 WriteParam(m, p.referenced_surfaces);
303 WriteParam(m, p.quad_list.size()); 304 WriteParam(m, p.quad_list.size());
304 305
305 cc::SharedQuadStateList::ConstIterator shared_quad_state_iter = 306 cc::SharedQuadStateList::ConstIterator shared_quad_state_iter =
306 p.shared_quad_state_list.begin(); 307 p.shared_quad_state_list.begin();
307 cc::SharedQuadStateList::ConstIterator last_shared_quad_state_iter = 308 cc::SharedQuadStateList::ConstIterator last_shared_quad_state_iter =
308 p.shared_quad_state_list.end(); 309 p.shared_quad_state_list.end();
309 for (const auto& quad : p.quad_list) { 310 for (const auto& quad : p.quad_list) {
310 DCHECK(quad->rect.Contains(quad->visible_rect)) 311 DCHECK(quad->rect.Contains(quad->visible_rect))
311 << quad->material << " rect: " << quad->rect.ToString() 312 << quad->material << " rect: " << quad->rect.ToString()
312 << " visible_rect: " << quad->visible_rect.ToString(); 313 << " visible_rect: " << quad->visible_rect.ToString();
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 377
377 // Whether the quad points to a new shared quad state for each quad. 378 // Whether the quad points to a new shared quad state for each quad.
378 to_reserve += p.quad_list.size() * sizeof(bool); 379 to_reserve += p.quad_list.size() * sizeof(bool);
379 380
380 // Shared quad state is only written when a quad contains a shared quad state 381 // Shared quad state is only written when a quad contains a shared quad state
381 // that has not been written. 382 // that has not been written.
382 to_reserve += p.shared_quad_state_list.size() * sizeof(cc::SharedQuadState); 383 to_reserve += p.shared_quad_state_list.size() * sizeof(cc::SharedQuadState);
383 384
384 // The largest quad type, verified by a unit test. 385 // The largest quad type, verified by a unit test.
385 to_reserve += p.quad_list.size() * cc::LargestDrawQuadSize(); 386 to_reserve += p.quad_list.size() * cc::LargestDrawQuadSize();
387
388 // The actual list of referenced surfaces.
389 to_reserve += p.referenced_surfaces.size() * sizeof(cc::SurfaceId);
386 return to_reserve; 390 return to_reserve;
387 } 391 }
388 392
389 template <typename QuadType> 393 template <typename QuadType>
390 static cc::DrawQuad* ReadDrawQuad(const Message* m, 394 static cc::DrawQuad* ReadDrawQuad(const Message* m,
391 base::PickleIterator* iter, 395 base::PickleIterator* iter,
392 cc::RenderPass* render_pass) { 396 cc::RenderPass* render_pass) {
393 QuadType* quad = render_pass->CreateAndAppendDrawQuad<QuadType>(); 397 QuadType* quad = render_pass->CreateAndAppendDrawQuad<QuadType>();
394 if (!ReadParam(m, iter, quad)) 398 if (!ReadParam(m, iter, quad))
395 return NULL; 399 return NULL;
396 return quad; 400 return quad;
397 } 401 }
398 402
399 bool ParamTraits<cc::RenderPass>::Read(const Message* m, 403 bool ParamTraits<cc::RenderPass>::Read(const Message* m,
400 base::PickleIterator* iter, 404 base::PickleIterator* iter,
401 param_type* p) { 405 param_type* p) {
402 cc::RenderPassId id; 406 cc::RenderPassId id;
403 gfx::Rect output_rect; 407 gfx::Rect output_rect;
404 gfx::Rect damage_rect; 408 gfx::Rect damage_rect;
405 gfx::Transform transform_to_root_target; 409 gfx::Transform transform_to_root_target;
406 bool has_transparent_background; 410 bool has_transparent_background;
411 std::vector<cc::SurfaceId> referenced_surfaces;
407 size_t quad_list_size; 412 size_t quad_list_size;
408 413
409 if (!ReadParam(m, iter, &id) || !ReadParam(m, iter, &output_rect) || 414 if (!ReadParam(m, iter, &id) || !ReadParam(m, iter, &output_rect) ||
410 !ReadParam(m, iter, &damage_rect) || 415 !ReadParam(m, iter, &damage_rect) ||
411 !ReadParam(m, iter, &transform_to_root_target) || 416 !ReadParam(m, iter, &transform_to_root_target) ||
412 !ReadParam(m, iter, &has_transparent_background) || 417 !ReadParam(m, iter, &has_transparent_background) ||
418 !ReadParam(m, iter, &referenced_surfaces) ||
413 !ReadParam(m, iter, &quad_list_size)) 419 !ReadParam(m, iter, &quad_list_size))
414 return false; 420 return false;
415 421
416 p->SetAll(id, 422 p->SetAll(id,
417 output_rect, 423 output_rect,
418 damage_rect, 424 damage_rect,
419 transform_to_root_target, 425 transform_to_root_target,
420 has_transparent_background); 426 has_transparent_background);
427 p->referenced_surfaces.swap(referenced_surfaces);
421 428
422 for (size_t i = 0; i < quad_list_size; ++i) { 429 for (size_t i = 0; i < quad_list_size; ++i) {
423 cc::DrawQuad::Material material; 430 cc::DrawQuad::Material material;
424 base::PickleIterator temp_iter = *iter; 431 base::PickleIterator temp_iter = *iter;
425 if (!ReadParam(m, &temp_iter, &material)) 432 if (!ReadParam(m, &temp_iter, &material))
426 return false; 433 return false;
427 434
428 cc::DrawQuad* draw_quad = NULL; 435 cc::DrawQuad* draw_quad = NULL;
429 switch (material) { 436 switch (material) {
430 case cc::DrawQuad::DEBUG_BORDER: 437 case cc::DrawQuad::DEBUG_BORDER:
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
499 LogParam(p.id, l); 506 LogParam(p.id, l);
500 l->append("), "); 507 l->append("), ");
501 LogParam(p.output_rect, l); 508 LogParam(p.output_rect, l);
502 l->append(", "); 509 l->append(", ");
503 LogParam(p.damage_rect, l); 510 LogParam(p.damage_rect, l);
504 l->append(", "); 511 l->append(", ");
505 LogParam(p.transform_to_root_target, l); 512 LogParam(p.transform_to_root_target, l);
506 l->append(", "); 513 l->append(", ");
507 LogParam(p.has_transparent_background, l); 514 LogParam(p.has_transparent_background, l);
508 l->append(", "); 515 l->append(", ");
516 LogParam(p.referenced_surfaces, l);
517 l->append(", ");
509 518
510 l->append("["); 519 l->append("[");
511 for (const auto& shared_quad_state : p.shared_quad_state_list) { 520 for (const auto& shared_quad_state : p.shared_quad_state_list) {
512 if (shared_quad_state != p.shared_quad_state_list.front()) 521 if (shared_quad_state != p.shared_quad_state_list.front())
513 l->append(", "); 522 l->append(", ");
514 LogParam(*shared_quad_state, l); 523 LogParam(*shared_quad_state, l);
515 } 524 }
516 l->append("], ["); 525 l->append("], [");
517 for (const auto& quad : p.quad_list) { 526 for (const auto& quad : p.quad_list) {
518 if (quad != p.quad_list.front()) 527 if (quad != p.quad_list.front())
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after
841 l->append("TextureDrawQuad::OverlayResources(["); 850 l->append("TextureDrawQuad::OverlayResources([");
842 for (size_t i = 0; i < cc::DrawQuad::Resources::kMaxResourceIdCount; ++i) { 851 for (size_t i = 0; i < cc::DrawQuad::Resources::kMaxResourceIdCount; ++i) {
843 LogParam(p.size_in_pixels[i], l); 852 LogParam(p.size_in_pixels[i], l);
844 if (i < (cc::DrawQuad::Resources::kMaxResourceIdCount - 1)) 853 if (i < (cc::DrawQuad::Resources::kMaxResourceIdCount - 1))
845 l->append(", "); 854 l->append(", ");
846 } 855 }
847 l->append("])"); 856 l->append("])");
848 } 857 }
849 858
850 } // namespace IPC 859 } // namespace IPC
OLDNEW
« no previous file with comments | « content/common/cc_messages.h ('k') | content/common/cc_messages_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698