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

Side by Side Diff: ipc/ipc_message_macros.h

Issue 8322013: Fix IPC logging on Windows. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 9 years, 2 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/renderer/plugin_channel_host.cc ('k') | ipc/ipc_message_utils.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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 // Defining IPC Messages 5 // Defining IPC Messages
6 // 6 //
7 // Your IPC messages will be defined by macros inside of an XXX_messages.h 7 // Your IPC messages will be defined by macros inside of an XXX_messages.h
8 // header file. Most of the time, the system can automatically generate all 8 // header file. Most of the time, the system can automatically generate all
9 // of messaging mechanism from these definitions, but sometimes some manual 9 // of messaging mechanism from these definitions, but sometimes some manual
10 // coding is required. In these cases, you will also have an XXX_messages.cc 10 // coding is required. In these cases, you will also have an XXX_messages.cc
(...skipping 582 matching lines...) Expand 10 before | Expand all | Expand 10 after
593 in_cnt, out_cnt, in_list, out_list) \ 593 in_cnt, out_cnt, in_list, out_list) \
594 IPC_##sync##_##kind##_DECL(msg_class, in_cnt, out_cnt, in_list, out_list) \ 594 IPC_##sync##_##kind##_DECL(msg_class, in_cnt, out_cnt, in_list, out_list) \
595 IPC_MESSAGE_EXTRA(sync, kind, msg_class, in_cnt, out_cnt, in_list, out_list) 595 IPC_MESSAGE_EXTRA(sync, kind, msg_class, in_cnt, out_cnt, in_list, out_list)
596 596
597 #define IPC_EMPTY_CONTROL_DECL(msg_class, in_cnt, out_cnt, in_list, out_list) \ 597 #define IPC_EMPTY_CONTROL_DECL(msg_class, in_cnt, out_cnt, in_list, out_list) \
598 class msg_class : public IPC::Message { \ 598 class msg_class : public IPC::Message { \
599 public: \ 599 public: \
600 typedef IPC::Message Schema; \ 600 typedef IPC::Message Schema; \
601 enum { ID = IPC_MESSAGE_ID() }; \ 601 enum { ID = IPC_MESSAGE_ID() }; \
602 msg_class() : IPC::Message(MSG_ROUTING_CONTROL, ID, PRIORITY_NORMAL) {} \ 602 msg_class() : IPC::Message(MSG_ROUTING_CONTROL, ID, PRIORITY_NORMAL) {} \
603 static void Log(std::string* name, const Message* msg, std::string* l); \
603 }; 604 };
604 605
605 #define IPC_EMPTY_ROUTED_DECL(msg_class, in_cnt, out_cnt, in_list, out_list) \ 606 #define IPC_EMPTY_ROUTED_DECL(msg_class, in_cnt, out_cnt, in_list, out_list) \
606 class msg_class : public IPC::Message { \ 607 class msg_class : public IPC::Message { \
607 public: \ 608 public: \
608 typedef IPC::Message Schema; \ 609 typedef IPC::Message Schema; \
609 enum { ID = IPC_MESSAGE_ID() }; \ 610 enum { ID = IPC_MESSAGE_ID() }; \
610 msg_class(int32 routing_id) \ 611 msg_class(int32 routing_id) \
611 : IPC::Message(routing_id, ID, PRIORITY_NORMAL) {} \ 612 : IPC::Message(routing_id, ID, PRIORITY_NORMAL) {} \
613 static void Log(std::string* name, const Message* msg, std::string* l); \
612 }; 614 };
613 615
614 #define IPC_ASYNC_CONTROL_DECL(msg_class, in_cnt, out_cnt, in_list, out_list) \ 616 #define IPC_ASYNC_CONTROL_DECL(msg_class, in_cnt, out_cnt, in_list, out_list) \
615 class IPC_MESSAGE_EXPORT msg_class : public IPC::Message { \ 617 class IPC_MESSAGE_EXPORT msg_class : public IPC::Message { \
616 public: \ 618 public: \
617 typedef IPC::MessageSchema<IPC_TUPLE_IN_##in_cnt in_list> Schema; \ 619 typedef IPC::MessageSchema<IPC_TUPLE_IN_##in_cnt in_list> Schema; \
618 typedef Schema::Param Param; \ 620 typedef Schema::Param Param; \
619 enum { ID = IPC_MESSAGE_ID() }; \ 621 enum { ID = IPC_MESSAGE_ID() }; \
620 msg_class(IPC_TYPE_IN_##in_cnt in_list); \ 622 msg_class(IPC_TYPE_IN_##in_cnt in_list); \
621 virtual ~msg_class(); \ 623 virtual ~msg_class(); \
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
746 } \ 748 } \
747 msg_class::~msg_class() {} \ 749 msg_class::~msg_class() {} \
748 bool msg_class::ReadSendParam(const Message* msg, Schema::SendParam* p) { \ 750 bool msg_class::ReadSendParam(const Message* msg, Schema::SendParam* p) { \
749 return Schema::ReadSendParam(msg, p); \ 751 return Schema::ReadSendParam(msg, p); \
750 } \ 752 } \
751 bool msg_class::ReadReplyParam(const Message* msg, \ 753 bool msg_class::ReadReplyParam(const Message* msg, \
752 TupleTypes<ReplyParam>::ValueTuple* p) { \ 754 TupleTypes<ReplyParam>::ValueTuple* p) { \
753 return Schema::ReadReplyParam(msg, p); \ 755 return Schema::ReadReplyParam(msg, p); \
754 } 756 }
755 757
756 #define IPC_EMPTY_MESSAGE_LOG(msg_class) 758 #define IPC_EMPTY_MESSAGE_LOG(msg_class) \
759 void msg_class::Log(std::string* name, \
760 const Message* msg, \
761 std::string* l) { \
762 if (name) \
763 *name = #msg_class; \
764 }
757 765
758 #define IPC_ASYNC_MESSAGE_LOG(msg_class) \ 766 #define IPC_ASYNC_MESSAGE_LOG(msg_class) \
759 void msg_class::Log(std::string* name, \ 767 void msg_class::Log(std::string* name, \
760 const Message* msg, \ 768 const Message* msg, \
761 std::string* l) { \ 769 std::string* l) { \
762 if (name) \ 770 if (name) \
763 *name = #msg_class; \ 771 *name = #msg_class; \
764 if (!msg || !l) \ 772 if (!msg || !l) \
765 return; \ 773 return; \
766 Schema::Param p; \ 774 Schema::Param p; \
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
985 // This corresponds to an enum value from IPCMessageStart. 993 // This corresponds to an enum value from IPCMessageStart.
986 #define IPC_MESSAGE_CLASS(message) \ 994 #define IPC_MESSAGE_CLASS(message) \
987 IPC_MESSAGE_ID_CLASS(message.type()) 995 IPC_MESSAGE_ID_CLASS(message.type())
988 996
989 #endif // IPC_IPC_MESSAGE_MACROS_H_ 997 #endif // IPC_IPC_MESSAGE_MACROS_H_
990 998
991 // Clean up IPC_MESSAGE_START in this unguarded section so that the 999 // Clean up IPC_MESSAGE_START in this unguarded section so that the
992 // XXX_messages.h files need not do so themselves. This makes the 1000 // XXX_messages.h files need not do so themselves. This makes the
993 // XXX_messages.h files easier to write. 1001 // XXX_messages.h files easier to write.
994 #undef IPC_MESSAGE_START 1002 #undef IPC_MESSAGE_START
OLDNEW
« no previous file with comments | « content/renderer/plugin_channel_host.cc ('k') | ipc/ipc_message_utils.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698