| 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 "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 Loading... |
| 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 = sizeof(p.device_scale_factor); | 714 size_t to_reserve = p.resource_list.size() * sizeof(cc::TransferableResource); |
| 715 to_reserve += p.resource_list.size() * sizeof(cc::TransferableResource); | |
| 716 for (size_t i = 0; i < p.render_pass_list.size(); ++i) { | 715 for (size_t i = 0; i < p.render_pass_list.size(); ++i) { |
| 717 const cc::RenderPass* pass = p.render_pass_list[i]; | 716 const cc::RenderPass* pass = p.render_pass_list[i]; |
| 718 to_reserve += ReserveSizeForRenderPassWrite(*pass); | 717 to_reserve += ReserveSizeForRenderPassWrite(*pass); |
| 719 } | 718 } |
| 720 m->Reserve(to_reserve); | 719 m->Reserve(to_reserve); |
| 721 | 720 |
| 722 WriteParam(m, p.device_scale_factor); | |
| 723 WriteParam(m, p.resource_list); | 721 WriteParam(m, p.resource_list); |
| 724 WriteParam(m, p.render_pass_list.size()); | 722 WriteParam(m, p.render_pass_list.size()); |
| 725 for (size_t i = 0; i < p.render_pass_list.size(); ++i) | 723 for (size_t i = 0; i < p.render_pass_list.size(); ++i) |
| 726 WriteParam(m, *p.render_pass_list[i]); | 724 WriteParam(m, *p.render_pass_list[i]); |
| 727 } | 725 } |
| 728 | 726 |
| 729 bool ParamTraits<cc::DelegatedFrameData>::Read(const Message* m, | 727 bool ParamTraits<cc::DelegatedFrameData>::Read(const Message* m, |
| 730 PickleIterator* iter, | 728 PickleIterator* iter, |
| 731 param_type* p) { | 729 param_type* p) { |
| 732 if (!ReadParam(m, iter, &p->device_scale_factor)) | |
| 733 return false; | |
| 734 | |
| 735 const static size_t kMaxRenderPasses = 10000; | 730 const static size_t kMaxRenderPasses = 10000; |
| 736 | 731 |
| 737 size_t num_render_passes; | 732 size_t num_render_passes; |
| 738 if (!ReadParam(m, iter, &p->resource_list) || | 733 if (!ReadParam(m, iter, &p->resource_list) || |
| 739 !ReadParam(m, iter, &num_render_passes) || | 734 !ReadParam(m, iter, &num_render_passes) || |
| 740 num_render_passes > kMaxRenderPasses || num_render_passes == 0) | 735 num_render_passes > kMaxRenderPasses || num_render_passes == 0) |
| 741 return false; | 736 return false; |
| 742 for (size_t i = 0; i < num_render_passes; ++i) { | 737 for (size_t i = 0; i < num_render_passes; ++i) { |
| 743 scoped_ptr<cc::RenderPass> render_pass = cc::RenderPass::Create(); | 738 scoped_ptr<cc::RenderPass> render_pass = cc::RenderPass::Create(); |
| 744 if (!ReadParam(m, iter, render_pass.get())) | 739 if (!ReadParam(m, iter, render_pass.get())) |
| 745 return false; | 740 return false; |
| 746 p->render_pass_list.push_back(render_pass.Pass()); | 741 p->render_pass_list.push_back(render_pass.Pass()); |
| 747 } | 742 } |
| 748 return true; | 743 return true; |
| 749 } | 744 } |
| 750 | 745 |
| 751 void ParamTraits<cc::DelegatedFrameData>::Log(const param_type& p, | 746 void ParamTraits<cc::DelegatedFrameData>::Log(const param_type& p, |
| 752 std::string* l) { | 747 std::string* l) { |
| 753 l->append("DelegatedFrameData("); | 748 l->append("DelegatedFrameData("); |
| 754 LogParam(p.device_scale_factor, l); | |
| 755 LogParam(p.resource_list, l); | 749 LogParam(p.resource_list, l); |
| 756 l->append(", ["); | 750 l->append(", ["); |
| 757 for (size_t i = 0; i < p.render_pass_list.size(); ++i) { | 751 for (size_t i = 0; i < p.render_pass_list.size(); ++i) { |
| 758 if (i) | 752 if (i) |
| 759 l->append(", "); | 753 l->append(", "); |
| 760 LogParam(*p.render_pass_list[i], l); | 754 LogParam(*p.render_pass_list[i], l); |
| 761 } | 755 } |
| 762 l->append("])"); | 756 l->append("])"); |
| 763 } | 757 } |
| 764 | 758 |
| (...skipping 30 matching lines...) Expand all Loading... |
| 795 l->append(", "); | 789 l->append(", "); |
| 796 LogParam(p.size, l); | 790 LogParam(p.size, l); |
| 797 l->append(", "); | 791 l->append(", "); |
| 798 LogParam(p.damage_rect, l); | 792 LogParam(p.damage_rect, l); |
| 799 l->append(", "); | 793 l->append(", "); |
| 800 LogParam(p.bitmap_id, l); | 794 LogParam(p.bitmap_id, l); |
| 801 l->append(")"); | 795 l->append(")"); |
| 802 } | 796 } |
| 803 | 797 |
| 804 } // namespace IPC | 798 } // namespace IPC |
| OLD | NEW |