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

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

Issue 12340015: [CLOSED] Big patch. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 9 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
« no previous file with comments | « content/common/cc_messages.h ('k') | content/content_browser.gypi » ('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/compositor_frame.h" 7 #include "cc/compositor_frame.h"
8 #include "content/public/common/common_param_traits.h" 8 #include "content/public/common/common_param_traits.h"
9 #include "third_party/WebKit/Source/Platform/chromium/public/WebData.h" 9 #include "third_party/WebKit/Source/Platform/chromium/public/WebData.h"
10 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperations .h" 10 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperations .h"
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after
534 } 534 }
535 } 535 }
536 l->append("])"); 536 l->append("])");
537 } 537 }
538 538
539 namespace { 539 namespace {
540 enum CompositorFrameType { 540 enum CompositorFrameType {
541 NO_FRAME, 541 NO_FRAME,
542 DELEGATED_FRAME, 542 DELEGATED_FRAME,
543 GL_FRAME, 543 GL_FRAME,
544 SOFTWARE_FRAME,
544 }; 545 };
545 } 546 }
546 547
547 void ParamTraits<cc::CompositorFrame>::Write(Message* m, 548 void ParamTraits<cc::CompositorFrame>::Write(Message* m,
548 const param_type& p) { 549 const param_type& p) {
549 WriteParam(m, p.metadata); 550 WriteParam(m, p.metadata);
550 if (p.delegated_frame_data) { 551 if (p.delegated_frame_data) {
551 DCHECK(!p.gl_frame_data); 552 DCHECK(!p.gl_frame_data);
553 DCHECK(!p.software_frame_data);
552 WriteParam(m, static_cast<int>(DELEGATED_FRAME)); 554 WriteParam(m, static_cast<int>(DELEGATED_FRAME));
553 WriteParam(m, *p.delegated_frame_data); 555 WriteParam(m, *p.delegated_frame_data);
554 } else if (p.gl_frame_data) { 556 } else if (p.gl_frame_data) {
557 DCHECK(!p.software_frame_data);
555 WriteParam(m, static_cast<int>(GL_FRAME)); 558 WriteParam(m, static_cast<int>(GL_FRAME));
556 WriteParam(m, *p.gl_frame_data); 559 WriteParam(m, *p.gl_frame_data);
560 } else if (p.software_frame_data) {
561 WriteParam(m, static_cast<int>(SOFTWARE_FRAME));
562 WriteParam(m, *p.software_frame_data);
557 } else { 563 } else {
558 WriteParam(m, static_cast<int>(NO_FRAME)); 564 WriteParam(m, static_cast<int>(NO_FRAME));
559 } 565 }
560 } 566 }
561 567
562 bool ParamTraits<cc::CompositorFrame>::Read(const Message* m, 568 bool ParamTraits<cc::CompositorFrame>::Read(const Message* m,
563 PickleIterator* iter, 569 PickleIterator* iter,
564 param_type* p) { 570 param_type* p) {
565 if (!ReadParam(m, iter, &p->metadata)) 571 if (!ReadParam(m, iter, &p->metadata))
566 return false; 572 return false;
567 573
568 int compositor_frame_type; 574 int compositor_frame_type;
569 if (!ReadParam(m, iter, &compositor_frame_type)) 575 if (!ReadParam(m, iter, &compositor_frame_type))
570 return false; 576 return false;
571 577
572 switch (compositor_frame_type) { 578 switch (compositor_frame_type) {
573 case DELEGATED_FRAME: 579 case DELEGATED_FRAME:
574 p->delegated_frame_data.reset(new cc::DelegatedFrameData()); 580 p->delegated_frame_data.reset(new cc::DelegatedFrameData());
575 if (!ReadParam(m, iter, p->delegated_frame_data.get())) 581 if (!ReadParam(m, iter, p->delegated_frame_data.get()))
576 return false; 582 return false;
577 break; 583 break;
578 case GL_FRAME: 584 case GL_FRAME:
579 p->gl_frame_data.reset(new cc::GLFrameData()); 585 p->gl_frame_data.reset(new cc::GLFrameData());
580 if (!ReadParam(m, iter, p->gl_frame_data.get())) 586 if (!ReadParam(m, iter, p->gl_frame_data.get()))
581 return false; 587 return false;
582 break; 588 break;
589 case SOFTWARE_FRAME:
590 p->software_frame_data.reset(new cc::SoftwareFrameData());
591 if (!ReadParam(m, iter, p->software_frame_data.get()))
592 return false;
593 break;
583 case NO_FRAME: 594 case NO_FRAME:
584 break; 595 break;
585 default: 596 default:
586 return false; 597 return false;
587 } 598 }
588 return true; 599 return true;
589 } 600 }
590 601
591 void ParamTraits<cc::CompositorFrame>::Log(const param_type& p, 602 void ParamTraits<cc::CompositorFrame>::Log(const param_type& p,
592 std::string* l) { 603 std::string* l) {
593 l->append("CompositorFrame("); 604 l->append("CompositorFrame(");
594 LogParam(p.metadata, l); 605 LogParam(p.metadata, l);
595 l->append(", "); 606 l->append(", ");
596 if (p.delegated_frame_data) 607 if (p.delegated_frame_data)
597 LogParam(*p.delegated_frame_data, l); 608 LogParam(*p.delegated_frame_data, l);
598 else if (p.gl_frame_data) 609 else if (p.gl_frame_data)
599 LogParam(*p.gl_frame_data, l); 610 LogParam(*p.gl_frame_data, l);
611 else if (p.software_frame_data)
612 LogParam(*p.software_frame_data, l);
600 l->append(")"); 613 l->append(")");
601 } 614 }
602 615
603 void ParamTraits<cc::CompositorFrameAck>::Write(Message* m, 616 void ParamTraits<cc::CompositorFrameAck>::Write(Message* m,
604 const param_type& p) { 617 const param_type& p) {
605 WriteParam(m, p.resources); 618 WriteParam(m, p.resources);
619 WriteParam(m, p.last_content_dib);
606 if (p.gl_frame_data) { 620 if (p.gl_frame_data) {
607 WriteParam(m, static_cast<int>(GL_FRAME)); 621 WriteParam(m, static_cast<int>(GL_FRAME));
608 WriteParam(m, *p.gl_frame_data); 622 WriteParam(m, *p.gl_frame_data);
609 } else { 623 } else {
610 WriteParam(m, static_cast<int>(NO_FRAME)); 624 WriteParam(m, static_cast<int>(NO_FRAME));
611 } 625 }
612 } 626 }
613 627
614 bool ParamTraits<cc::CompositorFrameAck>::Read(const Message* m, 628 bool ParamTraits<cc::CompositorFrameAck>::Read(const Message* m,
615 PickleIterator* iter, 629 PickleIterator* iter,
616 param_type* p) { 630 param_type* p) {
617 if (!ReadParam(m, iter, &p->resources)) 631 if (!ReadParam(m, iter, &p->resources))
618 return false; 632 return false;
619 633
634 if (!ReadParam(m, iter, &p->last_content_dib))
635 return false;
636
620 int compositor_frame_type; 637 int compositor_frame_type;
621 if (!ReadParam(m, iter, &compositor_frame_type)) 638 if (!ReadParam(m, iter, &compositor_frame_type))
622 return false; 639 return false;
623 640
624 switch (compositor_frame_type) { 641 switch (compositor_frame_type) {
625 case NO_FRAME: 642 case NO_FRAME:
626 break; 643 break;
627 case GL_FRAME: 644 case GL_FRAME:
628 p->gl_frame_data.reset(new cc::GLFrameData()); 645 p->gl_frame_data.reset(new cc::GLFrameData());
629 if (!ReadParam(m, iter, p->gl_frame_data.get())) 646 if (!ReadParam(m, iter, p->gl_frame_data.get()))
630 return false; 647 return false;
631 break; 648 break;
632 default: 649 default:
633 return false; 650 return false;
634 } 651 }
635 return true; 652 return true;
636 } 653 }
637 654
638 void ParamTraits<cc::CompositorFrameAck>::Log(const param_type& p, 655 void ParamTraits<cc::CompositorFrameAck>::Log(const param_type& p,
639 std::string* l) { 656 std::string* l) {
640 l->append("CompositorFrameAck("); 657 l->append("CompositorFrameAck(");
641 LogParam(p.resources, l); 658 LogParam(p.resources, l);
642 l->append(", "); 659 l->append(", ");
660 LogParam(p.last_content_dib, l);
661 l->append(", ");
643 if (p.gl_frame_data) 662 if (p.gl_frame_data)
644 LogParam(*p.gl_frame_data, l); 663 LogParam(*p.gl_frame_data, l);
645 l->append(")"); 664 l->append(")");
646 } 665 }
647 666
648 void ParamTraits<cc::DelegatedFrameData>::Write(Message* m, 667 void ParamTraits<cc::DelegatedFrameData>::Write(Message* m,
649 const param_type& p) { 668 const param_type& p) {
650 WriteParam(m, p.resource_list); 669 WriteParam(m, p.resource_list);
651 WriteParam(m, p.render_pass_list.size()); 670 WriteParam(m, p.render_pass_list.size());
652 for (size_t i = 0; i < p.render_pass_list.size(); ++i) 671 for (size_t i = 0; i < p.render_pass_list.size(); ++i)
(...skipping 26 matching lines...) Expand all
679 l->append(", ["); 698 l->append(", [");
680 for (size_t i = 0; i < p.render_pass_list.size(); ++i) { 699 for (size_t i = 0; i < p.render_pass_list.size(); ++i) {
681 if (i) 700 if (i)
682 l->append(", "); 701 l->append(", ");
683 LogParam(*p.render_pass_list[i], l); 702 LogParam(*p.render_pass_list[i], l);
684 } 703 }
685 l->append("])"); 704 l->append("])");
686 } 705 }
687 706
688 } // namespace IPC 707 } // namespace IPC
OLDNEW
« no previous file with comments | « content/common/cc_messages.h ('k') | content/content_browser.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698