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 // 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 |
11 // implemation file as well. | 11 // implemation file as well. |
12 // | 12 // |
13 // The senders of your messages will include your XXX_messages.h file to | 13 // The senders of your messages will include your XXX_messages.h file to |
14 // get the full set of definitions they need to send your messages. | 14 // get the full set of definitions they need to send your messages. |
15 // | 15 // |
16 // Each XXX_messages.h file must be registered with the IPC system. This | 16 // Each XXX_messages.h file must be registered with the IPC system. This |
17 // requires adding two things: | 17 // requires adding two things: |
18 // - An XXXMsgStart value to the IPCMessageStart enum in ipc_message_utils.h | 18 // - An XXXMsgStart value to the IPCMessageStart enum in ipc_message_start.h |
19 // - An inclusion of XXX_messages.h file in a message generator .h file | 19 // - An inclusion of XXX_messages.h file in a message generator .h file |
20 // | 20 // |
21 // The XXXMsgStart value is an enumeration that ensures uniqueness for | 21 // The XXXMsgStart value is an enumeration that ensures uniqueness for |
22 // each different message file. Later, you will use this inside your | 22 // each different message file. Later, you will use this inside your |
23 // XXX_messages.h file before invoking message declaration macros: | 23 // XXX_messages.h file before invoking message declaration macros: |
24 // #define IPC_MESSAGE_START XXXMsgStart | 24 // #define IPC_MESSAGE_START XXXMsgStart |
25 // ( ... your macro invocations go here ... ) | 25 // ( ... your macro invocations go here ... ) |
26 // | 26 // |
27 // Message Generator Files | 27 // Message Generator Files |
28 // | 28 // |
(...skipping 975 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1004 // This corresponds to an enum value from IPCMessageStart. | 1004 // This corresponds to an enum value from IPCMessageStart. |
1005 #define IPC_MESSAGE_CLASS(message) \ | 1005 #define IPC_MESSAGE_CLASS(message) \ |
1006 IPC_MESSAGE_ID_CLASS(message.type()) | 1006 IPC_MESSAGE_ID_CLASS(message.type()) |
1007 | 1007 |
1008 #endif // IPC_IPC_MESSAGE_MACROS_H_ | 1008 #endif // IPC_IPC_MESSAGE_MACROS_H_ |
1009 | 1009 |
1010 // Clean up IPC_MESSAGE_START in this unguarded section so that the | 1010 // Clean up IPC_MESSAGE_START in this unguarded section so that the |
1011 // XXX_messages.h files need not do so themselves. This makes the | 1011 // XXX_messages.h files need not do so themselves. This makes the |
1012 // XXX_messages.h files easier to write. | 1012 // XXX_messages.h files easier to write. |
1013 #undef IPC_MESSAGE_START | 1013 #undef IPC_MESSAGE_START |
OLD | NEW |