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

Side by Side Diff: ipc/ipc_message.h

Issue 1149113006: Move Pickle to base namespace. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 6 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
« no previous file with comments | « ipc/ipc_channel_proxy_unittest_messages.h ('k') | ipc/ipc_message_utils.h » ('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 #ifndef IPC_IPC_MESSAGE_H_ 5 #ifndef IPC_IPC_MESSAGE_H_
6 #define IPC_IPC_MESSAGE_H_ 6 #define IPC_IPC_MESSAGE_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/memory/ref_counted.h" 11 #include "base/memory/ref_counted.h"
12 #include "base/pickle.h" 12 #include "base/pickle.h"
13 #include "base/trace_event/trace_event.h" 13 #include "base/trace_event/trace_event.h"
14 #include "ipc/ipc_export.h" 14 #include "ipc/ipc_export.h"
15 15
16 #if !defined(NDEBUG) 16 #if !defined(NDEBUG)
17 #define IPC_MESSAGE_LOG_ENABLED 17 #define IPC_MESSAGE_LOG_ENABLED
18 #endif 18 #endif
19 19
20 namespace IPC { 20 namespace IPC {
21 21
22 //------------------------------------------------------------------------------ 22 //------------------------------------------------------------------------------
23 23
24 struct LogData; 24 struct LogData;
25 class MessageAttachment; 25 class MessageAttachment;
26 class MessageAttachmentSet; 26 class MessageAttachmentSet;
27 27
28 class IPC_EXPORT Message : public Pickle { 28 class IPC_EXPORT Message : public base::Pickle {
29 public: 29 public:
30 enum PriorityValue { 30 enum PriorityValue {
31 PRIORITY_LOW = 1, 31 PRIORITY_LOW = 1,
32 PRIORITY_NORMAL, 32 PRIORITY_NORMAL,
33 PRIORITY_HIGH 33 PRIORITY_HIGH
34 }; 34 };
35 35
36 // Bit values used in the flags field. 36 // Bit values used in the flags field.
37 // Upper 24 bits of flags store a reference number, so this enum is limited to 37 // Upper 24 bits of flags store a reference number, so this enum is limited to
38 // 8 bits. 38 // 8 bits.
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 return true; 156 return true;
157 } 157 }
158 158
159 // Used for async messages with no parameters. 159 // Used for async messages with no parameters.
160 static void Log(std::string* name, const Message* msg, std::string* l) { 160 static void Log(std::string* name, const Message* msg, std::string* l) {
161 } 161 }
162 162
163 // Find the end of the message data that starts at range_start. Returns NULL 163 // Find the end of the message data that starts at range_start. Returns NULL
164 // if the entire message is not found in the given data range. 164 // if the entire message is not found in the given data range.
165 static const char* FindNext(const char* range_start, const char* range_end) { 165 static const char* FindNext(const char* range_start, const char* range_end) {
166 return Pickle::FindNext(sizeof(Header), range_start, range_end); 166 return base::Pickle::FindNext(sizeof(Header), range_start, range_end);
167 } 167 }
168 168
169 // WriteAttachment appends |attachment| to the end of the set. It returns 169 // WriteAttachment appends |attachment| to the end of the set. It returns
170 // false iff the set is full. 170 // false iff the set is full.
171 bool WriteAttachment(scoped_refptr<MessageAttachment> attachment); 171 bool WriteAttachment(scoped_refptr<MessageAttachment> attachment);
172 // ReadAttachment parses an attachment given the parsing state |iter| and 172 // ReadAttachment parses an attachment given the parsing state |iter| and
173 // writes it to |*attachment|. It returns true on success. 173 // writes it to |*attachment|. It returns true on success.
174 bool ReadAttachment(PickleIterator* iter, 174 bool ReadAttachment(base::PickleIterator* iter,
175 scoped_refptr<MessageAttachment>* attachment) const; 175 scoped_refptr<MessageAttachment>* attachment) const;
176 // Returns true if there are any attachment in this message. 176 // Returns true if there are any attachment in this message.
177 bool HasAttachments() const; 177 bool HasAttachments() const;
178 // Returns true if there are any MojoHandleAttachments in this message. 178 // Returns true if there are any MojoHandleAttachments in this message.
179 bool HasMojoHandles() const; 179 bool HasMojoHandles() const;
180 180
181 #ifdef IPC_MESSAGE_LOG_ENABLED 181 #ifdef IPC_MESSAGE_LOG_ENABLED
182 // Adds the outgoing time from Time::Now() at the end of the message and sets 182 // Adds the outgoing time from Time::Now() at the end of the message and sets
183 // a bit to indicate that it's been added. 183 // a bit to indicate that it's been added.
184 void set_sent_time(int64 time); 184 void set_sent_time(int64 time);
(...skipping 27 matching lines...) Expand all
212 protected: 212 protected:
213 friend class Channel; 213 friend class Channel;
214 friend class ChannelMojo; 214 friend class ChannelMojo;
215 friend class ChannelNacl; 215 friend class ChannelNacl;
216 friend class ChannelPosix; 216 friend class ChannelPosix;
217 friend class ChannelWin; 217 friend class ChannelWin;
218 friend class MessageReplyDeserializer; 218 friend class MessageReplyDeserializer;
219 friend class SyncMessage; 219 friend class SyncMessage;
220 220
221 #pragma pack(push, 4) 221 #pragma pack(push, 4)
222 struct Header : Pickle::Header { 222 struct Header : base::Pickle::Header {
223 int32 routing; // ID of the view that this message is destined for 223 int32 routing; // ID of the view that this message is destined for
224 uint32 type; // specifies the user-defined message type 224 uint32 type; // specifies the user-defined message type
225 uint32 flags; // specifies control flags for the message 225 uint32 flags; // specifies control flags for the message
226 #if defined(OS_POSIX) 226 #if defined(OS_POSIX)
227 uint16 num_fds; // the number of descriptors included with this message 227 uint16 num_fds; // the number of descriptors included with this message
228 uint16 pad; // explicitly initialize this to appease valgrind 228 uint16 pad; // explicitly initialize this to appease valgrind
229 #endif 229 #endif
230 }; 230 };
231 #pragma pack(pop) 231 #pragma pack(pop)
232 232
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
274 MSG_ROUTING_NONE = -2, 274 MSG_ROUTING_NONE = -2,
275 275
276 // indicates a general message not sent to a particular tab. 276 // indicates a general message not sent to a particular tab.
277 MSG_ROUTING_CONTROL = kint32max, 277 MSG_ROUTING_CONTROL = kint32max,
278 }; 278 };
279 279
280 #define IPC_REPLY_ID 0xFFFFFFF0 // Special message id for replies 280 #define IPC_REPLY_ID 0xFFFFFFF0 // Special message id for replies
281 #define IPC_LOGGING_ID 0xFFFFFFF1 // Special message id for logging 281 #define IPC_LOGGING_ID 0xFFFFFFF1 // Special message id for logging
282 282
283 #endif // IPC_IPC_MESSAGE_H_ 283 #endif // IPC_IPC_MESSAGE_H_
OLDNEW
« no previous file with comments | « ipc/ipc_channel_proxy_unittest_messages.h ('k') | ipc/ipc_message_utils.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698