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

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

Issue 311253004: Invert DSF to map from delegated frame to layer space (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: scale android layer up, remove cc::DRL::SetDisplaySize Created 6 years, 6 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 | Annotate | Revision Log
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 "content/public/common/common_param_traits.h" 9 #include "content/public/common/common_param_traits.h"
10 #include "content/public/common/content_switches.h" 10 #include "content/public/common/content_switches.h"
(...skipping 693 matching lines...) Expand 10 before | Expand all | Expand 10 after
704 l->append(", "); 704 l->append(", ");
705 if (p.gl_frame_data) 705 if (p.gl_frame_data)
706 LogParam(*p.gl_frame_data, l); 706 LogParam(*p.gl_frame_data, l);
707 l->append(")"); 707 l->append(")");
708 } 708 }
709 709
710 void ParamTraits<cc::DelegatedFrameData>::Write(Message* m, 710 void ParamTraits<cc::DelegatedFrameData>::Write(Message* m,
711 const param_type& p) { 711 const param_type& p) {
712 DCHECK_NE(0u, p.render_pass_list.size()); 712 DCHECK_NE(0u, p.render_pass_list.size());
713 713
714 size_t to_reserve = p.resource_list.size() * sizeof(cc::TransferableResource); 714 size_t to_reserve = sizeof(p.device_scale_factor);
715 to_reserve += p.resource_list.size() * sizeof(cc::TransferableResource);
715 for (size_t i = 0; i < p.render_pass_list.size(); ++i) { 716 for (size_t i = 0; i < p.render_pass_list.size(); ++i) {
716 const cc::RenderPass* pass = p.render_pass_list[i]; 717 const cc::RenderPass* pass = p.render_pass_list[i];
717 to_reserve += ReserveSizeForRenderPassWrite(*pass); 718 to_reserve += ReserveSizeForRenderPassWrite(*pass);
718 } 719 }
719 m->Reserve(to_reserve); 720 m->Reserve(to_reserve);
720 721
722 WriteParam(m, p.device_scale_factor);
721 WriteParam(m, p.resource_list); 723 WriteParam(m, p.resource_list);
722 WriteParam(m, p.render_pass_list.size()); 724 WriteParam(m, p.render_pass_list.size());
723 for (size_t i = 0; i < p.render_pass_list.size(); ++i) 725 for (size_t i = 0; i < p.render_pass_list.size(); ++i)
724 WriteParam(m, *p.render_pass_list[i]); 726 WriteParam(m, *p.render_pass_list[i]);
725 } 727 }
726 728
727 bool ParamTraits<cc::DelegatedFrameData>::Read(const Message* m, 729 bool ParamTraits<cc::DelegatedFrameData>::Read(const Message* m,
728 PickleIterator* iter, 730 PickleIterator* iter,
729 param_type* p) { 731 param_type* p) {
732 if (!ReadParam(m, iter, &p->device_scale_factor))
733 return false;
734
730 const static size_t kMaxRenderPasses = 10000; 735 const static size_t kMaxRenderPasses = 10000;
731 736
732 size_t num_render_passes; 737 size_t num_render_passes;
733 if (!ReadParam(m, iter, &p->resource_list) || 738 if (!ReadParam(m, iter, &p->resource_list) ||
734 !ReadParam(m, iter, &num_render_passes) || 739 !ReadParam(m, iter, &num_render_passes) ||
735 num_render_passes > kMaxRenderPasses || num_render_passes == 0) 740 num_render_passes > kMaxRenderPasses || num_render_passes == 0)
736 return false; 741 return false;
737 for (size_t i = 0; i < num_render_passes; ++i) { 742 for (size_t i = 0; i < num_render_passes; ++i) {
738 scoped_ptr<cc::RenderPass> render_pass = cc::RenderPass::Create(); 743 scoped_ptr<cc::RenderPass> render_pass = cc::RenderPass::Create();
739 if (!ReadParam(m, iter, render_pass.get())) 744 if (!ReadParam(m, iter, render_pass.get()))
740 return false; 745 return false;
741 p->render_pass_list.push_back(render_pass.Pass()); 746 p->render_pass_list.push_back(render_pass.Pass());
742 } 747 }
743 return true; 748 return true;
744 } 749 }
745 750
746 void ParamTraits<cc::DelegatedFrameData>::Log(const param_type& p, 751 void ParamTraits<cc::DelegatedFrameData>::Log(const param_type& p,
747 std::string* l) { 752 std::string* l) {
748 l->append("DelegatedFrameData("); 753 l->append("DelegatedFrameData(");
754 LogParam(p.device_scale_factor, l);
749 LogParam(p.resource_list, l); 755 LogParam(p.resource_list, l);
750 l->append(", ["); 756 l->append(", [");
751 for (size_t i = 0; i < p.render_pass_list.size(); ++i) { 757 for (size_t i = 0; i < p.render_pass_list.size(); ++i) {
752 if (i) 758 if (i)
753 l->append(", "); 759 l->append(", ");
754 LogParam(*p.render_pass_list[i], l); 760 LogParam(*p.render_pass_list[i], l);
755 } 761 }
756 l->append("])"); 762 l->append("])");
757 } 763 }
758 764
(...skipping 30 matching lines...) Expand all
789 l->append(", "); 795 l->append(", ");
790 LogParam(p.size, l); 796 LogParam(p.size, l);
791 l->append(", "); 797 l->append(", ");
792 LogParam(p.damage_rect, l); 798 LogParam(p.damage_rect, l);
793 l->append(", "); 799 l->append(", ");
794 LogParam(p.bitmap_id, l); 800 LogParam(p.bitmap_id, l);
795 l->append(")"); 801 l->append(")");
796 } 802 }
797 803
798 } // namespace IPC 804 } // namespace IPC
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698