| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 // This header is meant to be included in multiple passes, hence no traditional | 5 // This header is meant to be included in multiple passes, hence no traditional |
| 6 // header guard. | 6 // header guard. |
| 7 // | 7 // |
| 8 // In the first pass, IPC_MESSAGE_MACROS_ENUMS should be defined, which will | 8 // In the first pass, IPC_MESSAGE_MACROS_ENUMS should be defined, which will |
| 9 // create enums for each of the messages defined with the IPC_MESSAGE_* macros. | 9 // create enums for each of the messages defined with the IPC_MESSAGE_* macros. |
| 10 // | 10 // |
| (...skipping 571 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 582 class msg_class : public IPC::Message { \ | 582 class msg_class : public IPC::Message { \ |
| 583 public: \ | 583 public: \ |
| 584 enum { ID = msg_class##__ID }; \ | 584 enum { ID = msg_class##__ID }; \ |
| 585 msg_class() \ | 585 msg_class() \ |
| 586 : IPC::Message(MSG_ROUTING_CONTROL, \ | 586 : IPC::Message(MSG_ROUTING_CONTROL, \ |
| 587 ID, \ | 587 ID, \ |
| 588 PRIORITY_NORMAL) {} \ | 588 PRIORITY_NORMAL) {} \ |
| 589 }; | 589 }; |
| 590 | 590 |
| 591 #define IPC_MESSAGE_CONTROL1(msg_class, type1) \ | 591 #define IPC_MESSAGE_CONTROL1(msg_class, type1) \ |
| 592 class msg_class : public IPC::MessageWithTuple<type1> { \ | 592 class msg_class : public IPC::MessageWithTuple< Tuple1<type1> > { \ |
| 593 public: \ | 593 public: \ |
| 594 enum { ID = msg_class##__ID }; \ | 594 enum { ID = msg_class##__ID }; \ |
| 595 msg_class(const type1& arg1) \ | 595 msg_class(const type1& arg1) \ |
| 596 : IPC::MessageWithTuple<type1>(MSG_ROUTING_CONTROL, \ | 596 : IPC::MessageWithTuple< Tuple1<type1> >(MSG_ROUTING_CONTROL, \ |
| 597 ID, \ | 597 ID, \ |
| 598 arg1) {} \ | 598 MakeRefTuple(arg1)) {} \ |
| 599 }; | 599 }; |
| 600 | 600 |
| 601 #define IPC_MESSAGE_CONTROL2(msg_class, type1, type2) \ | 601 #define IPC_MESSAGE_CONTROL2(msg_class, type1, type2) \ |
| 602 class msg_class : public IPC::MessageWithTuple< Tuple2<type1, type2> > { \ | 602 class msg_class : public IPC::MessageWithTuple< Tuple2<type1, type2> > { \ |
| 603 public: \ | 603 public: \ |
| 604 enum { ID = msg_class##__ID }; \ | 604 enum { ID = msg_class##__ID }; \ |
| 605 msg_class(const type1& arg1, const type2& arg2) \ | 605 msg_class(const type1& arg1, const type2& arg2) \ |
| 606 : IPC::MessageWithTuple< Tuple2<type1, type2> >( \ | 606 : IPC::MessageWithTuple< Tuple2<type1, type2> >( \ |
| 607 MSG_ROUTING_CONTROL, \ | 607 MSG_ROUTING_CONTROL, \ |
| 608 ID, \ | 608 ID, \ |
| 609 MakeTuple(arg1, arg2)) {} \ | 609 MakeRefTuple(arg1, arg2)) {} \ |
| 610 }; | 610 }; |
| 611 | 611 |
| 612 #define IPC_MESSAGE_CONTROL3(msg_class, type1, type2, type3) \ | 612 #define IPC_MESSAGE_CONTROL3(msg_class, type1, type2, type3) \ |
| 613 class msg_class : \ | 613 class msg_class : \ |
| 614 public IPC::MessageWithTuple< Tuple3<type1, type2, type3> > { \ | 614 public IPC::MessageWithTuple< Tuple3<type1, type2, type3> > { \ |
| 615 public: \ | 615 public: \ |
| 616 enum { ID = msg_class##__ID }; \ | 616 enum { ID = msg_class##__ID }; \ |
| 617 msg_class(const type1& arg1, const type2& arg2, const type3& arg3) \ | 617 msg_class(const type1& arg1, const type2& arg2, const type3& arg3) \ |
| 618 : IPC::MessageWithTuple< Tuple3<type1, type2, type3> >( \ | 618 : IPC::MessageWithTuple< Tuple3<type1, type2, type3> >( \ |
| 619 MSG_ROUTING_CONTROL, \ | 619 MSG_ROUTING_CONTROL, \ |
| 620 ID, \ | 620 ID, \ |
| 621 MakeTuple(arg1, arg2, arg3)) {} \ | 621 MakeRefTuple(arg1, arg2, arg3)) {} \ |
| 622 }; | 622 }; |
| 623 | 623 |
| 624 #define IPC_MESSAGE_CONTROL4(msg_class, type1, type2, type3, type4) \ | 624 #define IPC_MESSAGE_CONTROL4(msg_class, type1, type2, type3, type4) \ |
| 625 class msg_class : \ | 625 class msg_class : \ |
| 626 public IPC::MessageWithTuple< Tuple4<type1, type2, type3, type4> > { \ | 626 public IPC::MessageWithTuple< Tuple4<type1, type2, type3, type4> > { \ |
| 627 public: \ | 627 public: \ |
| 628 enum { ID = msg_class##__ID }; \ | 628 enum { ID = msg_class##__ID }; \ |
| 629 msg_class(const type1& arg1, const type2& arg2, const type3& arg3, \ | 629 msg_class(const type1& arg1, const type2& arg2, const type3& arg3, \ |
| 630 const type4& arg4) \ | 630 const type4& arg4) \ |
| 631 : IPC::MessageWithTuple< Tuple4<type1, type2, type3, type4> >( \ | 631 : IPC::MessageWithTuple< Tuple4<type1, type2, type3, type4> >( \ |
| 632 MSG_ROUTING_CONTROL, \ | 632 MSG_ROUTING_CONTROL, \ |
| 633 ID, \ | 633 ID, \ |
| 634 MakeTuple(arg1, arg2, arg3, arg4)) {} \ | 634 MakeRefTuple(arg1, arg2, arg3, arg4)) {} \ |
| 635 }; | 635 }; |
| 636 | 636 |
| 637 #define IPC_MESSAGE_CONTROL5(msg_class, type1, type2, type3, type4, type5) \ | 637 #define IPC_MESSAGE_CONTROL5(msg_class, type1, type2, type3, type4, type5) \ |
| 638 class msg_class : \ | 638 class msg_class : \ |
| 639 public IPC::MessageWithTuple< Tuple5<type1, type2, type3, type4, type5> >
{ \ | 639 public IPC::MessageWithTuple< Tuple5<type1, type2, type3, type4, type5> >
{ \ |
| 640 public: \ | 640 public: \ |
| 641 enum { ID = msg_class##__ID }; \ | 641 enum { ID = msg_class##__ID }; \ |
| 642 msg_class(const type1& arg1, const type2& arg2, \ | 642 msg_class(const type1& arg1, const type2& arg2, \ |
| 643 const type3& arg3, const type4& arg4, const type5& arg5) \ | 643 const type3& arg3, const type4& arg4, const type5& arg5) \ |
| 644 : IPC::MessageWithTuple< Tuple5<type1, type2, type3, type4, type5> >( \ | 644 : IPC::MessageWithTuple< Tuple5<type1, type2, type3, type4, type5> >( \ |
| 645 MSG_ROUTING_CONTROL, \ | 645 MSG_ROUTING_CONTROL, \ |
| 646 ID, \ | 646 ID, \ |
| 647 MakeTuple(arg1, arg2, arg3, arg4, arg5)) {} \ | 647 MakeRefTuple(arg1, arg2, arg3, arg4, arg5)) {} \ |
| 648 }; | 648 }; |
| 649 | 649 |
| 650 #define IPC_MESSAGE_ROUTED0(msg_class) \ | 650 #define IPC_MESSAGE_ROUTED0(msg_class) \ |
| 651 class msg_class : public IPC::Message { \ | 651 class msg_class : public IPC::Message { \ |
| 652 public: \ | 652 public: \ |
| 653 enum { ID = msg_class##__ID }; \ | 653 enum { ID = msg_class##__ID }; \ |
| 654 msg_class(int32 routing_id) \ | 654 msg_class(int32 routing_id) \ |
| 655 : IPC::Message(routing_id, ID, PRIORITY_NORMAL) {} \ | 655 : IPC::Message(routing_id, ID, PRIORITY_NORMAL) {} \ |
| 656 }; | 656 }; |
| 657 | 657 |
| 658 #define IPC_MESSAGE_ROUTED1(msg_class, type1) \ | 658 #define IPC_MESSAGE_ROUTED1(msg_class, type1) \ |
| 659 class msg_class : public IPC::MessageWithTuple<type1> { \ | 659 class msg_class : public IPC::MessageWithTuple< Tuple1<type1> > { \ |
| 660 public: \ | 660 public: \ |
| 661 enum { ID = msg_class##__ID }; \ | 661 enum { ID = msg_class##__ID }; \ |
| 662 msg_class(int32 routing_id, const type1& arg1) \ | 662 msg_class(int32 routing_id, const type1& arg1) \ |
| 663 : IPC::MessageWithTuple<type1>(routing_id, ID, arg1) {} \ | 663 : IPC::MessageWithTuple< Tuple1<type1> >(routing_id, ID, \ |
| 664 MakeRefTuple(arg1)) {} \ |
| 664 }; | 665 }; |
| 665 | 666 |
| 666 #define IPC_MESSAGE_ROUTED2(msg_class, type1, type2) \ | 667 #define IPC_MESSAGE_ROUTED2(msg_class, type1, type2) \ |
| 667 class msg_class : public IPC::MessageWithTuple< Tuple2<type1, type2> > { \ | 668 class msg_class : public IPC::MessageWithTuple< Tuple2<type1, type2> > { \ |
| 668 public: \ | 669 public: \ |
| 669 enum { ID = msg_class##__ID }; \ | 670 enum { ID = msg_class##__ID }; \ |
| 670 msg_class(int32 routing_id, const type1& arg1, const type2& arg2) \ | 671 msg_class(int32 routing_id, const type1& arg1, const type2& arg2) \ |
| 671 : IPC::MessageWithTuple< Tuple2<type1, type2> >( \ | 672 : IPC::MessageWithTuple< Tuple2<type1, type2> >( \ |
| 672 routing_id, ID, MakeTuple(arg1, arg2)) {} \ | 673 routing_id, ID, MakeRefTuple(arg1, arg2)) {} \ |
| 673 }; | 674 }; |
| 674 | 675 |
| 675 #define IPC_MESSAGE_ROUTED3(msg_class, type1, type2, type3) \ | 676 #define IPC_MESSAGE_ROUTED3(msg_class, type1, type2, type3) \ |
| 676 class msg_class : \ | 677 class msg_class : \ |
| 677 public IPC::MessageWithTuple< Tuple3<type1, type2, type3> > { \ | 678 public IPC::MessageWithTuple< Tuple3<type1, type2, type3> > { \ |
| 678 public: \ | 679 public: \ |
| 679 enum { ID = msg_class##__ID }; \ | 680 enum { ID = msg_class##__ID }; \ |
| 680 msg_class(int32 routing_id, const type1& arg1, const type2& arg2, \ | 681 msg_class(int32 routing_id, const type1& arg1, const type2& arg2, \ |
| 681 const type3& arg3) \ | 682 const type3& arg3) \ |
| 682 : IPC::MessageWithTuple< Tuple3<type1, type2, type3> >( \ | 683 : IPC::MessageWithTuple< Tuple3<type1, type2, type3> >( \ |
| 683 routing_id, ID, MakeTuple(arg1, arg2, arg3)) {} \ | 684 routing_id, ID, MakeRefTuple(arg1, arg2, arg3)) {} \ |
| 684 }; | 685 }; |
| 685 | 686 |
| 686 #define IPC_MESSAGE_ROUTED4(msg_class, type1, type2, type3, type4) \ | 687 #define IPC_MESSAGE_ROUTED4(msg_class, type1, type2, type3, type4) \ |
| 687 class msg_class : \ | 688 class msg_class : \ |
| 688 public IPC::MessageWithTuple< Tuple4<type1, type2, type3, type4> > { \ | 689 public IPC::MessageWithTuple< Tuple4<type1, type2, type3, type4> > { \ |
| 689 public: \ | 690 public: \ |
| 690 enum { ID = msg_class##__ID }; \ | 691 enum { ID = msg_class##__ID }; \ |
| 691 msg_class(int32 routing_id, const type1& arg1, const type2& arg2, \ | 692 msg_class(int32 routing_id, const type1& arg1, const type2& arg2, \ |
| 692 const type3& arg3, const type4& arg4) \ | 693 const type3& arg3, const type4& arg4) \ |
| 693 : IPC::MessageWithTuple< Tuple4<type1, type2, type3, type4> >( \ | 694 : IPC::MessageWithTuple< Tuple4<type1, type2, type3, type4> >( \ |
| 694 routing_id, ID, MakeTuple(arg1, arg2, arg3, arg4)) {} \ | 695 routing_id, ID, MakeRefTuple(arg1, arg2, arg3, arg4)) {} \ |
| 695 }; | 696 }; |
| 696 | 697 |
| 697 #define IPC_MESSAGE_ROUTED5(msg_class, type1, type2, type3, type4, type5) \ | 698 #define IPC_MESSAGE_ROUTED5(msg_class, type1, type2, type3, type4, type5) \ |
| 698 class msg_class : \ | 699 class msg_class : \ |
| 699 public IPC::MessageWithTuple< Tuple5<type1, type2, type3, type4, type5> >
{ \ | 700 public IPC::MessageWithTuple< Tuple5<type1, type2, type3, type4, type5> >
{ \ |
| 700 public: \ | 701 public: \ |
| 701 enum { ID = msg_class##__ID }; \ | 702 enum { ID = msg_class##__ID }; \ |
| 702 msg_class(int32 routing_id, const type1& arg1, const type2& arg2, \ | 703 msg_class(int32 routing_id, const type1& arg1, const type2& arg2, \ |
| 703 const type3& arg3, const type4& arg4, const type5& arg5) \ | 704 const type3& arg3, const type4& arg4, const type5& arg5) \ |
| 704 : IPC::MessageWithTuple< Tuple5<type1, type2, type3, type4, type5> >( \ | 705 : IPC::MessageWithTuple< Tuple5<type1, type2, type3, type4, type5> >( \ |
| 705 routing_id, ID, MakeTuple(arg1, arg2, arg3, arg4, arg5)) {} \ | 706 routing_id, ID, MakeRefTuple(arg1, arg2, arg3, arg4, arg5)) {} \ |
| 706 }; | 707 }; |
| 707 | 708 |
| 708 #define IPC_MESSAGE_ROUTED6(msg_class, type1, type2, type3, type4, type5, \ | 709 #define IPC_MESSAGE_ROUTED6(msg_class, type1, type2, type3, type4, type5, \ |
| 709 type6) \ | 710 type6) \ |
| 710 class msg_class : \ | 711 class msg_class : \ |
| 711 public IPC::MessageWithTuple< Tuple6<type1, type2, type3, type4, type5, \ | 712 public IPC::MessageWithTuple< Tuple6<type1, type2, type3, type4, type5, \ |
| 712 type6> > { \ | 713 type6> > { \ |
| 713 public: \ | 714 public: \ |
| 714 enum { ID = msg_class##__ID }; \ | 715 enum { ID = msg_class##__ID }; \ |
| 715 msg_class(int32 routing_id, const type1& arg1, const type2& arg2, \ | 716 msg_class(int32 routing_id, const type1& arg1, const type2& arg2, \ |
| 716 const type3& arg3, const type4& arg4, const type5& arg5, \ | 717 const type3& arg3, const type4& arg4, const type5& arg5, \ |
| 717 const type6& arg6) \ | 718 const type6& arg6) \ |
| 718 : IPC::MessageWithTuple< Tuple6<type1, type2, type3, type4, type5, \ | 719 : IPC::MessageWithTuple< Tuple6<type1, type2, type3, type4, type5, \ |
| 719 type6> >( \ | 720 type6> >( \ |
| 720 routing_id, ID, MakeTuple(arg1, arg2, arg3, arg4, arg5, arg6)) {} \ | 721 routing_id, ID, MakeRefTuple(arg1, arg2, arg3, arg4, arg5, arg6)) {} \ |
| 721 }; | 722 }; |
| 722 | 723 |
| 723 #define IPC_SYNC_MESSAGE_CONTROL0_0(msg_class) \ | 724 #define IPC_SYNC_MESSAGE_CONTROL0_0(msg_class) \ |
| 724 class msg_class : public IPC::MessageWithReply<Tuple0, Tuple0 > { \ | 725 class msg_class : public IPC::MessageWithReply<Tuple0, Tuple0 > { \ |
| 725 public: \ | 726 public: \ |
| 726 enum { ID = msg_class##__ID }; \ | 727 enum { ID = msg_class##__ID }; \ |
| 727 msg_class() \ | 728 msg_class() \ |
| 728 : IPC::MessageWithReply<Tuple0, Tuple0 >( \ | 729 : IPC::MessageWithReply<Tuple0, Tuple0 >( \ |
| 729 MSG_ROUTING_CONTROL, ID, \ | 730 MSG_ROUTING_CONTROL, ID, \ |
| 730 MakeTuple(), MakeTuple()) {} \ | 731 MakeTuple(), MakeTuple()) {} \ |
| (...skipping 30 matching lines...) Expand all Loading... |
| 761 enum { ID = msg_class##__ID }; \ | 762 enum { ID = msg_class##__ID }; \ |
| 762 msg_class(type1_out* arg1, type2_out* arg2, type3_out* arg3) \ | 763 msg_class(type1_out* arg1, type2_out* arg2, type3_out* arg3) \ |
| 763 : IPC::MessageWithReply<Tuple0, \ | 764 : IPC::MessageWithReply<Tuple0, \ |
| 764 Tuple3<type1_out&, type2_out&, type3_out&> >(MSG_ROUTING_CONTROL, \ | 765 Tuple3<type1_out&, type2_out&, type3_out&> >(MSG_ROUTING_CONTROL, \ |
| 765 ID, \ | 766 ID, \ |
| 766 MakeTuple(), MakeRefTuple(*arg1, *arg2, *arg3)) {} \ | 767 MakeTuple(), MakeRefTuple(*arg1, *arg2, *arg3)) {} \ |
| 767 }; | 768 }; |
| 768 | 769 |
| 769 #define IPC_SYNC_MESSAGE_CONTROL1_0(msg_class, type1_in) \ | 770 #define IPC_SYNC_MESSAGE_CONTROL1_0(msg_class, type1_in) \ |
| 770 class msg_class : \ | 771 class msg_class : \ |
| 771 public IPC::MessageWithReply<type1_in, Tuple0 > { \ | 772 public IPC::MessageWithReply<Tuple1<type1_in>, Tuple0 > { \ |
| 772 public: \ | 773 public: \ |
| 773 enum { ID = msg_class##__ID }; \ | 774 enum { ID = msg_class##__ID }; \ |
| 774 msg_class(const type1_in& arg1) \ | 775 msg_class(const type1_in& arg1) \ |
| 775 : IPC::MessageWithReply<type1_in, Tuple0 >( \ | 776 : IPC::MessageWithReply<Tuple1<type1_in>, Tuple0 >( \ |
| 776 MSG_ROUTING_CONTROL, ID, \ | 777 MSG_ROUTING_CONTROL, ID, \ |
| 777 arg1, MakeTuple()) {} \ | 778 MakeRefTuple(arg1), MakeTuple()) {} \ |
| 778 }; | 779 }; |
| 779 | 780 |
| 780 #define IPC_SYNC_MESSAGE_CONTROL1_1(msg_class, type1_in, type1_out) \ | 781 #define IPC_SYNC_MESSAGE_CONTROL1_1(msg_class, type1_in, type1_out) \ |
| 781 class msg_class : \ | 782 class msg_class : \ |
| 782 public IPC::MessageWithReply<type1_in, Tuple1<type1_out&> > { \ | 783 public IPC::MessageWithReply<Tuple1<type1_in>, Tuple1<type1_out&> > { \ |
| 783 public: \ | 784 public: \ |
| 784 enum { ID = msg_class##__ID }; \ | 785 enum { ID = msg_class##__ID }; \ |
| 785 msg_class(const type1_in& arg1, type1_out* arg2) \ | 786 msg_class(const type1_in& arg1, type1_out* arg2) \ |
| 786 : IPC::MessageWithReply<type1_in, Tuple1<type1_out&> >( \ | 787 : IPC::MessageWithReply<Tuple1<type1_in>, Tuple1<type1_out&> >( \ |
| 787 MSG_ROUTING_CONTROL, ID, \ | 788 MSG_ROUTING_CONTROL, ID, \ |
| 788 arg1, MakeRefTuple(*arg2)) {} \ | 789 MakeRefTuple(arg1), MakeRefTuple(*arg2)) {} \ |
| 789 }; | 790 }; |
| 790 | 791 |
| 791 #define IPC_SYNC_MESSAGE_CONTROL1_2(msg_class, type1_in, type1_out, type2_out) \ | 792 #define IPC_SYNC_MESSAGE_CONTROL1_2(msg_class, type1_in, type1_out, type2_out) \ |
| 792 class msg_class : \ | 793 class msg_class : \ |
| 793 public IPC::MessageWithReply<type1_in, Tuple2<type1_out&, type2_out&> > {
\ | 794 public IPC::MessageWithReply<Tuple1<type1_in>, Tuple2<type1_out&, type2_ou
t&> > { \ |
| 794 public: \ | 795 public: \ |
| 795 enum { ID = msg_class##__ID }; \ | 796 enum { ID = msg_class##__ID }; \ |
| 796 msg_class(const type1_in& arg1, type1_out* arg2, type2_out* arg3) \ | 797 msg_class(const type1_in& arg1, type1_out* arg2, type2_out* arg3) \ |
| 797 : IPC::MessageWithReply<type1_in, Tuple2<type1_out&, type2_out&> >( \ | 798 : IPC::MessageWithReply<Tuple1<type1_in>, Tuple2<type1_out&, type2_out&>
>( \ |
| 798 MSG_ROUTING_CONTROL, ID, \ | 799 MSG_ROUTING_CONTROL, ID, \ |
| 799 arg1, MakeRefTuple(*arg2, *arg3)) {} \ | 800 MakeRefTuple(arg1), MakeRefTuple(*arg2, *arg3)) {} \ |
| 800 }; | 801 }; |
| 801 | 802 |
| 802 #define IPC_SYNC_MESSAGE_CONTROL1_3(msg_class, type1_in, type1_out, type2_out, t
ype3_out) \ | 803 #define IPC_SYNC_MESSAGE_CONTROL1_3(msg_class, type1_in, type1_out, type2_out, t
ype3_out) \ |
| 803 class msg_class : \ | 804 class msg_class : \ |
| 804 public IPC::MessageWithReply<type1_in, \ | 805 public IPC::MessageWithReply<Tuple1<type1_in>, \ |
| 805 Tuple3<type1_out&, type2_out&, type3_out&> >{ \ | 806 Tuple3<type1_out&, type2_out&, type3_out&> >{ \ |
| 806 public: \ | 807 public: \ |
| 807 enum { ID = msg_class##__ID }; \ | 808 enum { ID = msg_class##__ID }; \ |
| 808 msg_class(const type1_in& arg1, type1_out* arg2, type2_out* arg3, type3_out*
arg4) \ | 809 msg_class(const type1_in& arg1, type1_out* arg2, type2_out* arg3, type3_out*
arg4) \ |
| 809 : IPC::MessageWithReply<type1_in, \ | 810 : IPC::MessageWithReply<Tuple1<type1_in>, \ |
| 810 Tuple3<type1_out&, type2_out&, type3_out&> >(MSG_ROUTING_CONTROL, \ | 811 Tuple3<type1_out&, type2_out&, type3_out&> >(MSG_ROUTING_CONTROL, \ |
| 811 ID, \ | 812 ID, \ |
| 812 arg1, MakeRefTuple(*arg2, *arg3, *arg4)) {} \ | 813 MakeRefTuple(arg1), MakeRefTuple(*arg2, *arg3, *arg4)) {} \ |
| 813 }; | 814 }; |
| 814 | 815 |
| 815 #define IPC_SYNC_MESSAGE_CONTROL2_0(msg_class, type1_in, type2_in) \ | 816 #define IPC_SYNC_MESSAGE_CONTROL2_0(msg_class, type1_in, type2_in) \ |
| 816 class msg_class : \ | 817 class msg_class : \ |
| 817 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple0 > { \ | 818 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple0 > { \ |
| 818 public: \ | 819 public: \ |
| 819 enum { ID = msg_class##__ID }; \ | 820 enum { ID = msg_class##__ID }; \ |
| 820 msg_class(const type1_in& arg1, const type2_in& arg2) \ | 821 msg_class(const type1_in& arg1, const type2_in& arg2) \ |
| 821 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple0 >( \ | 822 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple0 >( \ |
| 822 MSG_ROUTING_CONTROL, ID, \ | 823 MSG_ROUTING_CONTROL, ID, \ |
| 823 MakeTuple(arg1, arg2), MakeTuple()) {} \ | 824 MakeRefTuple(arg1, arg2), MakeTuple()) {} \ |
| 824 }; | 825 }; |
| 825 | 826 |
| 826 #define IPC_SYNC_MESSAGE_CONTROL2_1(msg_class, type1_in, type2_in, type1_out) \ | 827 #define IPC_SYNC_MESSAGE_CONTROL2_1(msg_class, type1_in, type2_in, type1_out) \ |
| 827 class msg_class : \ | 828 class msg_class : \ |
| 828 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple1<type1_out&
> > { \ | 829 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple1<type1_out&
> > { \ |
| 829 public: \ | 830 public: \ |
| 830 enum { ID = msg_class##__ID }; \ | 831 enum { ID = msg_class##__ID }; \ |
| 831 msg_class(const type1_in& arg1, const type2_in& arg2, type1_out* arg3) \ | 832 msg_class(const type1_in& arg1, const type2_in& arg2, type1_out* arg3) \ |
| 832 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple1<type1_out&> >
( \ | 833 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple1<type1_out&> >
( \ |
| 833 MSG_ROUTING_CONTROL, ID, \ | 834 MSG_ROUTING_CONTROL, ID, \ |
| 834 MakeTuple(arg1, arg2), MakeRefTuple(*arg3)) {} \ | 835 MakeRefTuple(arg1, arg2), MakeRefTuple(*arg3)) {} \ |
| 835 }; | 836 }; |
| 836 | 837 |
| 837 #define IPC_SYNC_MESSAGE_CONTROL2_2(msg_class, type1_in, type2_in, type1_out, ty
pe2_out) \ | 838 #define IPC_SYNC_MESSAGE_CONTROL2_2(msg_class, type1_in, type2_in, type1_out, ty
pe2_out) \ |
| 838 class msg_class : \ | 839 class msg_class : \ |
| 839 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ | 840 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ |
| 840 Tuple2<type1_out&, type2_out&> > { \ | 841 Tuple2<type1_out&, type2_out&> > { \ |
| 841 public: \ | 842 public: \ |
| 842 enum { ID = msg_class##__ID }; \ | 843 enum { ID = msg_class##__ID }; \ |
| 843 msg_class(const type1_in& arg1, const type2_in& arg2, type1_out* arg3, type2
_out* arg4) \ | 844 msg_class(const type1_in& arg1, const type2_in& arg2, type1_out* arg3, type2
_out* arg4) \ |
| 844 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ | 845 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ |
| 845 Tuple2<type1_out&, type2_out&> >(MSG_ROUTING_CONTROL, ID, \ | 846 Tuple2<type1_out&, type2_out&> >(MSG_ROUTING_CONTROL, ID, \ |
| 846 MakeTuple(arg1, arg2), MakeRefTuple(*arg3, *arg4)) {} \ | 847 MakeRefTuple(arg1, arg2), MakeRefTuple(*arg3, *arg4)) {} \ |
| 847 }; | 848 }; |
| 848 | 849 |
| 849 #define IPC_SYNC_MESSAGE_CONTROL2_3(msg_class, type1_in, type2_in, type1_out, ty
pe2_out, type3_out) \ | 850 #define IPC_SYNC_MESSAGE_CONTROL2_3(msg_class, type1_in, type2_in, type1_out, ty
pe2_out, type3_out) \ |
| 850 class msg_class : \ | 851 class msg_class : \ |
| 851 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ | 852 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ |
| 852 Tuple3<type1_out&, type2_out&, type3_out&> > { \ | 853 Tuple3<type1_out&, type2_out&, type3_out&> > { \ |
| 853 public: \ | 854 public: \ |
| 854 enum { ID = msg_class##__ID }; \ | 855 enum { ID = msg_class##__ID }; \ |
| 855 msg_class(const type1_in& arg1, const type2_in& arg2, type1_out* arg3, type2
_out* arg4, type3_out* arg5) \ | 856 msg_class(const type1_in& arg1, const type2_in& arg2, type1_out* arg3, type2
_out* arg4, type3_out* arg5) \ |
| 856 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ | 857 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ |
| 857 Tuple3<type1_out&, type2_out&, type3_out&> >(MSG_ROUTING_CONTROL, \ | 858 Tuple3<type1_out&, type2_out&, type3_out&> >(MSG_ROUTING_CONTROL, \ |
| 858 ID, \ | 859 ID, \ |
| 859 MakeTuple(arg1, arg2), MakeRefTuple(*arg3, *arg4, *arg5)) {} \ | 860 MakeRefTuple(arg1, arg2), MakeRefTuple(*arg3, *arg4, *arg5)) {} \ |
| 860 }; | 861 }; |
| 861 | 862 |
| 862 #define IPC_SYNC_MESSAGE_CONTROL3_1(msg_class, type1_in, type2_in, type3_in, typ
e1_out) \ | 863 #define IPC_SYNC_MESSAGE_CONTROL3_1(msg_class, type1_in, type2_in, type3_in, typ
e1_out) \ |
| 863 class msg_class : \ | 864 class msg_class : \ |
| 864 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 865 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 865 Tuple1<type1_out&> > { \ | 866 Tuple1<type1_out&> > { \ |
| 866 public: \ | 867 public: \ |
| 867 enum { ID = msg_class##__ID }; \ | 868 enum { ID = msg_class##__ID }; \ |
| 868 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
type1_out* arg4) \ | 869 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
type1_out* arg4) \ |
| 869 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 870 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 870 Tuple1<type1_out&> >(MSG_ROUTING_CONTROL, ID, \ | 871 Tuple1<type1_out&> >(MSG_ROUTING_CONTROL, ID, \ |
| 871 MakeTuple(arg1, arg2, arg3), MakeRefTuple(*arg4)) {} \ | 872 MakeRefTuple(arg1, arg2, arg3), MakeRefTuple(*arg4)) {} \ |
| 872 }; | 873 }; |
| 873 | 874 |
| 874 #define IPC_SYNC_MESSAGE_CONTROL3_2(msg_class, type1_in, type2_in, type3_in, typ
e1_out, type2_out) \ | 875 #define IPC_SYNC_MESSAGE_CONTROL3_2(msg_class, type1_in, type2_in, type3_in, typ
e1_out, type2_out) \ |
| 875 class msg_class : \ | 876 class msg_class : \ |
| 876 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 877 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 877 Tuple2<type1_out&, type2_out&> > { \ | 878 Tuple2<type1_out&, type2_out&> > { \ |
| 878 public: \ | 879 public: \ |
| 879 enum { ID = msg_class##__ID }; \ | 880 enum { ID = msg_class##__ID }; \ |
| 880 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
type1_out* arg4, type2_out* arg5) \ | 881 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
type1_out* arg4, type2_out* arg5) \ |
| 881 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 882 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 882 Tuple2<type1_out&, type2_out&> >(MSG_ROUTING_CONTROL, ID, \ | 883 Tuple2<type1_out&, type2_out&> >(MSG_ROUTING_CONTROL, ID, \ |
| 883 MakeTuple(arg1, arg2, arg3), MakeRefTuple(*arg4, *arg5)) {} \ | 884 MakeRefTuple(arg1, arg2, arg3), MakeRefTuple(*arg4, *arg5)) {} \ |
| 884 }; | 885 }; |
| 885 | 886 |
| 886 #define IPC_SYNC_MESSAGE_CONTROL3_3(msg_class, type1_in, type2_in, type3_in, typ
e1_out, type2_out, type3_out) \ | 887 #define IPC_SYNC_MESSAGE_CONTROL3_3(msg_class, type1_in, type2_in, type3_in, typ
e1_out, type2_out, type3_out) \ |
| 887 class msg_class : \ | 888 class msg_class : \ |
| 888 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 889 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 889 Tuple3<type1_out&, type2_out&, type3_out&> > { \ | 890 Tuple3<type1_out&, type2_out&, type3_out&> > { \ |
| 890 public: \ | 891 public: \ |
| 891 enum { ID = msg_class##__ID }; \ | 892 enum { ID = msg_class##__ID }; \ |
| 892 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
type1_out* arg4, type2_out* arg5, type3_out* arg6) \ | 893 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
type1_out* arg4, type2_out* arg5, type3_out* arg6) \ |
| 893 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 894 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 894 Tuple3<type1_out&, type2_out&, type3_out&> >(MSG_ROUTING_CONTROL, \ | 895 Tuple3<type1_out&, type2_out&, type3_out&> >(MSG_ROUTING_CONTROL, \ |
| 895 ID, \ | 896 ID, \ |
| 896 MakeTuple(arg1, arg2, arg3), MakeRefTuple(*arg4, *arg5, *arg6)) {} \ | 897 MakeRefTuple(arg1, arg2, arg3), MakeRefTuple(*arg4, *arg5, *arg6)) {
} \ |
| 897 }; | 898 }; |
| 898 | 899 |
| 899 #define IPC_SYNC_MESSAGE_CONTROL4_1(msg_class, type1_in, type2_in, type3_in, typ
e4_in, type1_out) \ | 900 #define IPC_SYNC_MESSAGE_CONTROL4_1(msg_class, type1_in, type2_in, type3_in, typ
e4_in, type1_out) \ |
| 900 class msg_class : \ | 901 class msg_class : \ |
| 901 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ | 902 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ |
| 902 Tuple1<type1_out&> > { \ | 903 Tuple1<type1_out&> > { \ |
| 903 public: \ | 904 public: \ |
| 904 enum { ID = msg_class##__ID }; \ | 905 enum { ID = msg_class##__ID }; \ |
| 905 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
const type4_in& arg4, type1_out* arg6) \ | 906 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
const type4_in& arg4, type1_out* arg6) \ |
| 906 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ | 907 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ |
| 907 Tuple1<type1_out&> >(MSG_ROUTING_CONTROL, ID, \ | 908 Tuple1<type1_out&> >(MSG_ROUTING_CONTROL, ID, \ |
| 908 MakeTuple(arg1, arg2, arg3, arg4), MakeRefTuple(*arg6)) {} \ | 909 MakeRefTuple(arg1, arg2, arg3, arg4), MakeRefTuple(*arg6)) {} \ |
| 909 }; | 910 }; |
| 910 | 911 |
| 911 #define IPC_SYNC_MESSAGE_CONTROL4_2(msg_class, type1_in, type2_in, type3_in, typ
e4_in, type1_out, type2_out) \ | 912 #define IPC_SYNC_MESSAGE_CONTROL4_2(msg_class, type1_in, type2_in, type3_in, typ
e4_in, type1_out, type2_out) \ |
| 912 class msg_class : \ | 913 class msg_class : \ |
| 913 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ | 914 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ |
| 914 Tuple2<type1_out&, type2_out&> > { \ | 915 Tuple2<type1_out&, type2_out&> > { \ |
| 915 public: \ | 916 public: \ |
| 916 enum { ID = msg_class##__ID }; \ | 917 enum { ID = msg_class##__ID }; \ |
| 917 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
const type4_in& arg4, type1_out* arg5, type2_out* arg6) \ | 918 msg_class(const type1_in& arg1, const type2_in& arg2, const type3_in& arg3,
const type4_in& arg4, type1_out* arg5, type2_out* arg6) \ |
| 918 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ | 919 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ |
| 919 Tuple2<type1_out&, type2_out&> >(MSG_ROUTING_CONTROL, ID, \ | 920 Tuple2<type1_out&, type2_out&> >(MSG_ROUTING_CONTROL, ID, \ |
| 920 MakeTuple(arg1, arg2, arg3, arg4), MakeRefTuple(*arg5, *arg6)) {} \ | 921 MakeRefTuple(arg1, arg2, arg3, arg4), MakeRefTuple(*arg5, *arg6)) {}
\ |
| 921 }; | 922 }; |
| 922 | 923 |
| 923 #define IPC_SYNC_MESSAGE_ROUTED0_1(msg_class, type1_out) \ | 924 #define IPC_SYNC_MESSAGE_ROUTED0_1(msg_class, type1_out) \ |
| 924 class msg_class : public IPC::MessageWithReply<Tuple0, Tuple1<type1_out&> > {
\ | 925 class msg_class : public IPC::MessageWithReply<Tuple0, Tuple1<type1_out&> > {
\ |
| 925 public: \ | 926 public: \ |
| 926 enum { ID = msg_class##__ID }; \ | 927 enum { ID = msg_class##__ID }; \ |
| 927 msg_class(int routing_id, type1_out* arg1) \ | 928 msg_class(int routing_id, type1_out* arg1) \ |
| 928 : IPC::MessageWithReply<Tuple0, Tuple1<type1_out&> >( \ | 929 : IPC::MessageWithReply<Tuple0, Tuple1<type1_out&> >( \ |
| 929 routing_id, ID, \ | 930 routing_id, ID, \ |
| 930 MakeTuple(), MakeRefTuple(*arg1)) {} \ | 931 MakeTuple(), MakeRefTuple(*arg1)) {} \ |
| (...skipping 27 matching lines...) Expand all Loading... |
| 958 public: \ | 959 public: \ |
| 959 enum { ID = msg_class##__ID }; \ | 960 enum { ID = msg_class##__ID }; \ |
| 960 msg_class(int routing_id, type1_out* arg1, type2_out* arg2, type3_out* arg3)
\ | 961 msg_class(int routing_id, type1_out* arg1, type2_out* arg2, type3_out* arg3)
\ |
| 961 : IPC::MessageWithReply<Tuple0, \ | 962 : IPC::MessageWithReply<Tuple0, \ |
| 962 Tuple3<type1_out&, type2_out&, type3_out&> >(routing_id, ID, \ | 963 Tuple3<type1_out&, type2_out&, type3_out&> >(routing_id, ID, \ |
| 963 MakeTuple(), MakeRefTuple(*arg1, *arg2, *arg3)) {} \ | 964 MakeTuple(), MakeRefTuple(*arg1, *arg2, *arg3)) {} \ |
| 964 }; | 965 }; |
| 965 | 966 |
| 966 #define IPC_SYNC_MESSAGE_ROUTED1_0(msg_class, type1_in) \ | 967 #define IPC_SYNC_MESSAGE_ROUTED1_0(msg_class, type1_in) \ |
| 967 class msg_class : \ | 968 class msg_class : \ |
| 968 public IPC::MessageWithReply<type1_in, Tuple0 > { \ | 969 public IPC::MessageWithReply<Tuple1<type1_in>, Tuple0 > { \ |
| 969 public: \ | 970 public: \ |
| 970 enum { ID = msg_class##__ID }; \ | 971 enum { ID = msg_class##__ID }; \ |
| 971 msg_class(int routing_id, const type1_in& arg1) \ | 972 msg_class(int routing_id, const type1_in& arg1) \ |
| 972 : IPC::MessageWithReply<type1_in, Tuple0 >( \ | 973 : IPC::MessageWithReply<Tuple1<type1_in>, Tuple0 >( \ |
| 973 routing_id, ID, \ | 974 routing_id, ID, \ |
| 974 arg1, MakeTuple()) {} \ | 975 MakeRefTuple(arg1), MakeTuple()) {} \ |
| 975 }; | 976 }; |
| 976 | 977 |
| 977 #define IPC_SYNC_MESSAGE_ROUTED1_1(msg_class, type1_in, type1_out) \ | 978 #define IPC_SYNC_MESSAGE_ROUTED1_1(msg_class, type1_in, type1_out) \ |
| 978 class msg_class : \ | 979 class msg_class : \ |
| 979 public IPC::MessageWithReply<type1_in, Tuple1<type1_out&> > { \ | 980 public IPC::MessageWithReply<Tuple1<type1_in>, Tuple1<type1_out&> > { \ |
| 980 public: \ | 981 public: \ |
| 981 enum { ID = msg_class##__ID }; \ | 982 enum { ID = msg_class##__ID }; \ |
| 982 msg_class(int routing_id, const type1_in& arg1, type1_out* arg2) \ | 983 msg_class(int routing_id, const type1_in& arg1, type1_out* arg2) \ |
| 983 : IPC::MessageWithReply<type1_in, Tuple1<type1_out&> >( \ | 984 : IPC::MessageWithReply<Tuple1<type1_in>, Tuple1<type1_out&> >( \ |
| 984 routing_id, ID, \ | 985 routing_id, ID, \ |
| 985 arg1, MakeRefTuple(*arg2)) {} \ | 986 MakeRefTuple(arg1), MakeRefTuple(*arg2)) {} \ |
| 986 }; | 987 }; |
| 987 | 988 |
| 988 #define IPC_SYNC_MESSAGE_ROUTED1_2(msg_class, type1_in, type1_out, type2_out) \ | 989 #define IPC_SYNC_MESSAGE_ROUTED1_2(msg_class, type1_in, type1_out, type2_out) \ |
| 989 class msg_class : \ | 990 class msg_class : \ |
| 990 public IPC::MessageWithReply<type1_in, Tuple2<type1_out&, type2_out&> > {
\ | 991 public IPC::MessageWithReply<Tuple1<type1_in>, Tuple2<type1_out&, type2_ou
t&> > { \ |
| 991 public: \ | 992 public: \ |
| 992 enum { ID = msg_class##__ID }; \ | 993 enum { ID = msg_class##__ID }; \ |
| 993 msg_class(int routing_id, const type1_in& arg1, type1_out* arg2, type2_out*
arg3) \ | 994 msg_class(int routing_id, const type1_in& arg1, type1_out* arg2, type2_out*
arg3) \ |
| 994 : IPC::MessageWithReply<type1_in, Tuple2<type1_out&, type2_out&> >( \ | 995 : IPC::MessageWithReply<Tuple1<type1_in>, Tuple2<type1_out&, type2_out&>
>( \ |
| 995 routing_id, ID, \ | 996 routing_id, ID, \ |
| 996 arg1, MakeRefTuple(*arg2, *arg3)) {} \ | 997 MakeRefTuple(arg1), MakeRefTuple(*arg2, *arg3)) {} \ |
| 997 }; | 998 }; |
| 998 | 999 |
| 999 #define IPC_SYNC_MESSAGE_ROUTED1_3(msg_class, type1_in, type1_out, type2_out, ty
pe3_out) \ | 1000 #define IPC_SYNC_MESSAGE_ROUTED1_3(msg_class, type1_in, type1_out, type2_out, ty
pe3_out) \ |
| 1000 class msg_class : \ | 1001 class msg_class : \ |
| 1001 public IPC::MessageWithReply<type1_in, \ | 1002 public IPC::MessageWithReply<Tuple1<type1_in>, \ |
| 1002 Tuple3<type1_out&, type2_out&, type3_out&> >{ \ | 1003 Tuple3<type1_out&, type2_out&, type3_out&> >{ \ |
| 1003 public: \ | 1004 public: \ |
| 1004 enum { ID = msg_class##__ID }; \ | 1005 enum { ID = msg_class##__ID }; \ |
| 1005 msg_class(int routing_id, const type1_in& arg1, type1_out* arg2, type2_out*
arg3, type3_out* arg4) \ | 1006 msg_class(int routing_id, const type1_in& arg1, type1_out* arg2, type2_out*
arg3, type3_out* arg4) \ |
| 1006 : IPC::MessageWithReply<type1_in, \ | 1007 : IPC::MessageWithReply<Tuple1<type1_in>, \ |
| 1007 Tuple3<type1_out&, type2_out&, type3_out&> >(routing_id, ID, \ | 1008 Tuple3<type1_out&, type2_out&, type3_out&> >(routing_id, ID, \ |
| 1008 arg1, MakeRefTuple(*arg2, *arg3, *arg4)) {} \ | 1009 MakeRefTuple(arg1), MakeRefTuple(*arg2, *arg3, *arg4)) {} \ |
| 1009 }; | 1010 }; |
| 1010 | 1011 |
| 1011 #define IPC_SYNC_MESSAGE_ROUTED1_4(msg_class, type1_in, type1_out, type2_out, ty
pe3_out, type4_out) \ | 1012 #define IPC_SYNC_MESSAGE_ROUTED1_4(msg_class, type1_in, type1_out, type2_out, ty
pe3_out, type4_out) \ |
| 1012 class msg_class : \ | 1013 class msg_class : \ |
| 1013 public IPC::MessageWithReply<type1_in, \ | 1014 public IPC::MessageWithReply<Tuple1<type1_in>, \ |
| 1014 Tuple4<type1_out&, type2_out&, type3_out&, type4_out&> >{ \ | 1015 Tuple4<type1_out&, type2_out&, type3_out&, type4_out&> >{ \ |
| 1015 public: \ | 1016 public: \ |
| 1016 enum { ID = msg_class##__ID }; \ | 1017 enum { ID = msg_class##__ID }; \ |
| 1017 msg_class(int routing_id, const type1_in& arg1, type1_out* arg2, type2_out*
arg3, type3_out* arg4, type4_out* arg5) \ | 1018 msg_class(int routing_id, const type1_in& arg1, type1_out* arg2, type2_out*
arg3, type3_out* arg4, type4_out* arg5) \ |
| 1018 : IPC::MessageWithReply<type1_in, \ | 1019 : IPC::MessageWithReply<Tuple1<type1_in>, \ |
| 1019 Tuple4<type1_out&, type2_out&, type3_out&, type4_out&> >(routing_id,
ID, \ | 1020 Tuple4<type1_out&, type2_out&, type3_out&, type4_out&> >(routing_id,
ID, \ |
| 1020 arg1, MakeRefTuple(*arg2, *arg3, *arg4, *arg5)) {} \ | 1021 MakeRefTuple(arg1), MakeRefTuple(*arg2, *arg3, *arg4, *arg5)) {} \ |
| 1021 }; | 1022 }; |
| 1022 | 1023 |
| 1023 #define IPC_SYNC_MESSAGE_ROUTED2_0(msg_class, type1_in, type2_in) \ | 1024 #define IPC_SYNC_MESSAGE_ROUTED2_0(msg_class, type1_in, type2_in) \ |
| 1024 class msg_class : \ | 1025 class msg_class : \ |
| 1025 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple0 > { \ | 1026 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple0 > { \ |
| 1026 public: \ | 1027 public: \ |
| 1027 enum { ID = msg_class##__ID }; \ | 1028 enum { ID = msg_class##__ID }; \ |
| 1028 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2) \ | 1029 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2) \ |
| 1029 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple0 >( \ | 1030 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple0 >( \ |
| 1030 routing_id, ID, \ | 1031 routing_id, ID, \ |
| 1031 MakeTuple(arg1, arg2), MakeTuple()) {} \ | 1032 MakeRefTuple(arg1, arg2), MakeTuple()) {} \ |
| 1032 }; | 1033 }; |
| 1033 | 1034 |
| 1034 #define IPC_SYNC_MESSAGE_ROUTED2_1(msg_class, type1_in, type2_in, type1_out) \ | 1035 #define IPC_SYNC_MESSAGE_ROUTED2_1(msg_class, type1_in, type2_in, type1_out) \ |
| 1035 class msg_class : \ | 1036 class msg_class : \ |
| 1036 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple1<type1_out&
> > { \ | 1037 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple1<type1_out&
> > { \ |
| 1037 public: \ | 1038 public: \ |
| 1038 enum { ID = msg_class##__ID }; \ | 1039 enum { ID = msg_class##__ID }; \ |
| 1039 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, type1_
out* arg3) \ | 1040 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, type1_
out* arg3) \ |
| 1040 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple1<type1_out&> >
( \ | 1041 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, Tuple1<type1_out&> >
( \ |
| 1041 routing_id, ID, \ | 1042 routing_id, ID, \ |
| 1042 MakeTuple(arg1, arg2), MakeRefTuple(*arg3)) {} \ | 1043 MakeRefTuple(arg1, arg2), MakeRefTuple(*arg3)) {} \ |
| 1043 }; | 1044 }; |
| 1044 | 1045 |
| 1045 #define IPC_SYNC_MESSAGE_ROUTED2_2(msg_class, type1_in, type2_in, type1_out, typ
e2_out) \ | 1046 #define IPC_SYNC_MESSAGE_ROUTED2_2(msg_class, type1_in, type2_in, type1_out, typ
e2_out) \ |
| 1046 class msg_class : \ | 1047 class msg_class : \ |
| 1047 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ | 1048 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ |
| 1048 Tuple2<type1_out&, type2_out&> > { \ | 1049 Tuple2<type1_out&, type2_out&> > { \ |
| 1049 public: \ | 1050 public: \ |
| 1050 enum { ID = msg_class##__ID }; \ | 1051 enum { ID = msg_class##__ID }; \ |
| 1051 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, type1_
out* arg3, type2_out* arg4) \ | 1052 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, type1_
out* arg3, type2_out* arg4) \ |
| 1052 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ | 1053 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ |
| 1053 Tuple2<type1_out&, type2_out&> >(routing_id, ID, \ | 1054 Tuple2<type1_out&, type2_out&> >(routing_id, ID, \ |
| 1054 MakeTuple(arg1, arg2), MakeRefTuple(*arg3, *arg4)) {} \ | 1055 MakeRefTuple(arg1, arg2), MakeRefTuple(*arg3, *arg4)) {} \ |
| 1055 }; | 1056 }; |
| 1056 | 1057 |
| 1057 #define IPC_SYNC_MESSAGE_ROUTED2_3(msg_class, type1_in, type2_in, type1_out, typ
e2_out, type3_out) \ | 1058 #define IPC_SYNC_MESSAGE_ROUTED2_3(msg_class, type1_in, type2_in, type1_out, typ
e2_out, type3_out) \ |
| 1058 class msg_class : \ | 1059 class msg_class : \ |
| 1059 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ | 1060 public IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ |
| 1060 Tuple3<type1_out&, type2_out&, type3_out&> > { \ | 1061 Tuple3<type1_out&, type2_out&, type3_out&> > { \ |
| 1061 public: \ | 1062 public: \ |
| 1062 enum { ID = msg_class##__ID }; \ | 1063 enum { ID = msg_class##__ID }; \ |
| 1063 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, type1_
out* arg3, type2_out* arg4, type3_out* arg5) \ | 1064 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, type1_
out* arg3, type2_out* arg4, type3_out* arg5) \ |
| 1064 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ | 1065 : IPC::MessageWithReply<Tuple2<type1_in, type2_in>, \ |
| 1065 Tuple3<type1_out&, type2_out&, type3_out&> >(routing_id, ID, \ | 1066 Tuple3<type1_out&, type2_out&, type3_out&> >(routing_id, ID, \ |
| 1066 MakeTuple(arg1, arg2), MakeRefTuple(*arg3, *arg4, *arg5)) {} \ | 1067 MakeRefTuple(arg1, arg2), MakeRefTuple(*arg3, *arg4, *arg5)) {} \ |
| 1067 }; | 1068 }; |
| 1068 | 1069 |
| 1069 #define IPC_SYNC_MESSAGE_ROUTED3_0(msg_class, type1_in, type2_in, type3_in) \ | 1070 #define IPC_SYNC_MESSAGE_ROUTED3_0(msg_class, type1_in, type2_in, type3_in) \ |
| 1070 class msg_class : \ | 1071 class msg_class : \ |
| 1071 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, Tuple0
> { \ | 1072 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, Tuple0
> { \ |
| 1072 public: \ | 1073 public: \ |
| 1073 enum { ID = msg_class##__ID }; \ | 1074 enum { ID = msg_class##__ID }; \ |
| 1074 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3) \ | 1075 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3) \ |
| 1075 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, Tuple0>( \ | 1076 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, Tuple0>( \ |
| 1076 routing_id, ID, \ | 1077 routing_id, ID, \ |
| 1077 MakeTuple(arg1, arg2, arg3), MakeTuple()) {} \ | 1078 MakeRefTuple(arg1, arg2, arg3), MakeTuple()) {} \ |
| 1078 }; | 1079 }; |
| 1079 | 1080 |
| 1080 #define IPC_SYNC_MESSAGE_ROUTED3_1(msg_class, type1_in, type2_in, type3_in, type
1_out) \ | 1081 #define IPC_SYNC_MESSAGE_ROUTED3_1(msg_class, type1_in, type2_in, type3_in, type
1_out) \ |
| 1081 class msg_class : \ | 1082 class msg_class : \ |
| 1082 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 1083 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 1083 Tuple1<type1_out&> > { \ | 1084 Tuple1<type1_out&> > { \ |
| 1084 public: \ | 1085 public: \ |
| 1085 enum { ID = msg_class##__ID }; \ | 1086 enum { ID = msg_class##__ID }; \ |
| 1086 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, type1_out* arg4) \ | 1087 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, type1_out* arg4) \ |
| 1087 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 1088 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 1088 Tuple1<type1_out&> >(routing_id, ID, \ | 1089 Tuple1<type1_out&> >(routing_id, ID, \ |
| 1089 MakeTuple(arg1, arg2, arg3), MakeRefTuple(*arg4)) {} \ | 1090 MakeRefTuple(arg1, arg2, arg3), MakeRefTuple(*arg4)) {} \ |
| 1090 }; | 1091 }; |
| 1091 | 1092 |
| 1092 #define IPC_SYNC_MESSAGE_ROUTED3_2(msg_class, type1_in, type2_in, type3_in, type
1_out, type2_out) \ | 1093 #define IPC_SYNC_MESSAGE_ROUTED3_2(msg_class, type1_in, type2_in, type3_in, type
1_out, type2_out) \ |
| 1093 class msg_class : \ | 1094 class msg_class : \ |
| 1094 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 1095 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 1095 Tuple2<type1_out&, type2_out&> > { \ | 1096 Tuple2<type1_out&, type2_out&> > { \ |
| 1096 public: \ | 1097 public: \ |
| 1097 enum { ID = msg_class##__ID }; \ | 1098 enum { ID = msg_class##__ID }; \ |
| 1098 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, type1_out* arg4, type2_out* arg5) \ | 1099 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, type1_out* arg4, type2_out* arg5) \ |
| 1099 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 1100 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 1100 Tuple2<type1_out&, type2_out&> >(routing_id, ID, \ | 1101 Tuple2<type1_out&, type2_out&> >(routing_id, ID, \ |
| 1101 MakeTuple(arg1, arg2, arg3), MakeRefTuple(*arg4, *arg5)) {} \ | 1102 MakeRefTuple(arg1, arg2, arg3), MakeRefTuple(*arg4, *arg5)) {} \ |
| 1102 }; | 1103 }; |
| 1103 | 1104 |
| 1104 #define IPC_SYNC_MESSAGE_ROUTED3_3(msg_class, type1_in, type2_in, type3_in, type
1_out, type2_out, type3_out) \ | 1105 #define IPC_SYNC_MESSAGE_ROUTED3_3(msg_class, type1_in, type2_in, type3_in, type
1_out, type2_out, type3_out) \ |
| 1105 class msg_class : \ | 1106 class msg_class : \ |
| 1106 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 1107 public IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 1107 Tuple3<type1_out&, type2_out&, type3_out&> > { \ | 1108 Tuple3<type1_out&, type2_out&, type3_out&> > { \ |
| 1108 public: \ | 1109 public: \ |
| 1109 enum { ID = msg_class##__ID }; \ | 1110 enum { ID = msg_class##__ID }; \ |
| 1110 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, type1_out* arg4, type2_out* arg5, type3_out* arg6) \ | 1111 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, type1_out* arg4, type2_out* arg5, type3_out* arg6) \ |
| 1111 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ | 1112 : IPC::MessageWithReply<Tuple3<type1_in, type2_in, type3_in>, \ |
| 1112 Tuple3<type1_out&, type2_out&, type3_out&> >(routing_id, ID, \ | 1113 Tuple3<type1_out&, type2_out&, type3_out&> >(routing_id, ID, \ |
| 1113 MakeTuple(arg1, arg2, arg3), MakeRefTuple(*arg4, *arg5, *arg6)) {} \ | 1114 MakeRefTuple(arg1, arg2, arg3), MakeRefTuple(*arg4, *arg5, *arg6)) {
} \ |
| 1114 }; | 1115 }; |
| 1115 | 1116 |
| 1116 #define IPC_SYNC_MESSAGE_ROUTED4_0(msg_class, type1_in, type2_in, type3_in, type
4_in) \ | 1117 #define IPC_SYNC_MESSAGE_ROUTED4_0(msg_class, type1_in, type2_in, type3_in, type
4_in) \ |
| 1117 class msg_class : \ | 1118 class msg_class : \ |
| 1118 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ | 1119 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ |
| 1119 Tuple0 > { \ | 1120 Tuple0 > { \ |
| 1120 public: \ | 1121 public: \ |
| 1121 enum { ID = msg_class##__ID }; \ | 1122 enum { ID = msg_class##__ID }; \ |
| 1122 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, const type4_in& arg4) \ | 1123 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, const type4_in& arg4) \ |
| 1123 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ | 1124 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ |
| 1124 Tuple0 >(routing_id, ID, \ | 1125 Tuple0 >(routing_id, ID, \ |
| 1125 MakeTuple(arg1, arg2, arg3, arg4), MakeTuple()) {} \ | 1126 MakeRefTuple(arg1, arg2, arg3, arg4), MakeTuple()) {} \ |
| 1126 }; | 1127 }; |
| 1127 | 1128 |
| 1128 #define IPC_SYNC_MESSAGE_ROUTED4_1(msg_class, type1_in, type2_in, type3_in, type
4_in, type1_out) \ | 1129 #define IPC_SYNC_MESSAGE_ROUTED4_1(msg_class, type1_in, type2_in, type3_in, type
4_in, type1_out) \ |
| 1129 class msg_class : \ | 1130 class msg_class : \ |
| 1130 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ | 1131 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ |
| 1131 Tuple1<type1_out&> > { \ | 1132 Tuple1<type1_out&> > { \ |
| 1132 public: \ | 1133 public: \ |
| 1133 enum { ID = msg_class##__ID }; \ | 1134 enum { ID = msg_class##__ID }; \ |
| 1134 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, const type4_in& arg4, type1_out* arg6) \ | 1135 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, const type4_in& arg4, type1_out* arg6) \ |
| 1135 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ | 1136 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ |
| 1136 Tuple1<type1_out&> >(routing_id, ID, \ | 1137 Tuple1<type1_out&> >(routing_id, ID, \ |
| 1137 MakeTuple(arg1, arg2, arg3, arg4), MakeRefTuple(*arg6)) {} \ | 1138 MakeRefTuple(arg1, arg2, arg3, arg4), MakeRefTuple(*arg6)) {} \ |
| 1138 }; | 1139 }; |
| 1139 | 1140 |
| 1140 #define IPC_SYNC_MESSAGE_ROUTED4_2(msg_class, type1_in, type2_in, type3_in, type
4_in, type1_out, type2_out) \ | 1141 #define IPC_SYNC_MESSAGE_ROUTED4_2(msg_class, type1_in, type2_in, type3_in, type
4_in, type1_out, type2_out) \ |
| 1141 class msg_class : \ | 1142 class msg_class : \ |
| 1142 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ | 1143 public IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in
>, \ |
| 1143 Tuple2<type1_out&, type2_out&> > { \ | 1144 Tuple2<type1_out&, type2_out&> > { \ |
| 1144 public: \ | 1145 public: \ |
| 1145 enum { ID = msg_class##__ID }; \ | 1146 enum { ID = msg_class##__ID }; \ |
| 1146 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, const type4_in& arg4, type1_out* arg5, type2_out* arg6) \ | 1147 msg_class(int routing_id, const type1_in& arg1, const type2_in& arg2, const
type3_in& arg3, const type4_in& arg4, type1_out* arg5, type2_out* arg6) \ |
| 1147 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ | 1148 : IPC::MessageWithReply<Tuple4<type1_in, type2_in, type3_in, type4_in>,
\ |
| 1148 Tuple2<type1_out&, type2_out&> >(routing_id, ID, \ | 1149 Tuple2<type1_out&, type2_out&> >(routing_id, ID, \ |
| 1149 MakeTuple(arg1, arg2, arg3, arg4), MakeRefTuple(*arg5, *arg6)) {} \ | 1150 MakeRefTuple(arg1, arg2, arg3, arg4), MakeRefTuple(*arg5, *arg6)) {}
\ |
| 1150 }; | 1151 }; |
| 1151 | 1152 |
| 1152 #endif // #if defined() | 1153 #endif // #if defined() |
| OLD | NEW |