| OLD | NEW |
| 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 #ifndef IPC_IPC_MESSAGE_UTILS_H_ | 5 #ifndef IPC_IPC_MESSAGE_UTILS_H_ |
| 6 #define IPC_IPC_MESSAGE_UTILS_H_ | 6 #define IPC_IPC_MESSAGE_UTILS_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 #include <map> | 10 #include <map> |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 98 }; | 98 }; |
| 99 | 99 |
| 100 class FilePath; | 100 class FilePath; |
| 101 class NullableString16; | 101 class NullableString16; |
| 102 | 102 |
| 103 namespace base { | 103 namespace base { |
| 104 class DictionaryValue; | 104 class DictionaryValue; |
| 105 class ListValue; | 105 class ListValue; |
| 106 class Time; | 106 class Time; |
| 107 class TimeDelta; | 107 class TimeDelta; |
| 108 class TimeTicks; |
| 108 struct FileDescriptor; | 109 struct FileDescriptor; |
| 109 } | 110 } |
| 110 | 111 |
| 111 namespace IPC { | 112 namespace IPC { |
| 112 | 113 |
| 113 struct ChannelHandle; | 114 struct ChannelHandle; |
| 114 | 115 |
| 115 //----------------------------------------------------------------------------- | 116 //----------------------------------------------------------------------------- |
| 116 // An iterator class for reading the fields contained within a Message. | 117 // An iterator class for reading the fields contained within a Message. |
| 117 | 118 |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 325 }; | 326 }; |
| 326 | 327 |
| 327 template <> | 328 template <> |
| 328 struct IPC_EXPORT ParamTraits<base::TimeDelta> { | 329 struct IPC_EXPORT ParamTraits<base::TimeDelta> { |
| 329 typedef base::TimeDelta param_type; | 330 typedef base::TimeDelta param_type; |
| 330 static void Write(Message* m, const param_type& p); | 331 static void Write(Message* m, const param_type& p); |
| 331 static bool Read(const Message* m, void** iter, param_type* r); | 332 static bool Read(const Message* m, void** iter, param_type* r); |
| 332 static void Log(const param_type& p, std::string* l); | 333 static void Log(const param_type& p, std::string* l); |
| 333 }; | 334 }; |
| 334 | 335 |
| 336 template <> |
| 337 struct IPC_EXPORT ParamTraits<base::TimeTicks> { |
| 338 typedef base::TimeTicks param_type; |
| 339 static void Write(Message* m, const param_type& p); |
| 340 static bool Read(const Message* m, void** iter, param_type* r); |
| 341 static void Log(const param_type& p, std::string* l); |
| 342 }; |
| 343 |
| 335 #if defined(OS_WIN) | 344 #if defined(OS_WIN) |
| 336 template <> | 345 template <> |
| 337 struct ParamTraits<LOGFONT> { | 346 struct ParamTraits<LOGFONT> { |
| 338 typedef LOGFONT param_type; | 347 typedef LOGFONT param_type; |
| 339 static void Write(Message* m, const param_type& p) { | 348 static void Write(Message* m, const param_type& p) { |
| 340 m->WriteData(reinterpret_cast<const char*>(&p), sizeof(LOGFONT)); | 349 m->WriteData(reinterpret_cast<const char*>(&p), sizeof(LOGFONT)); |
| 341 } | 350 } |
| 342 static bool Read(const Message* m, void** iter, param_type* r) { | 351 static bool Read(const Message* m, void** iter, param_type* r) { |
| 343 const char *data; | 352 const char *data; |
| 344 int data_size = 0; | 353 int data_size = 0; |
| (...skipping 749 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1094 ReplyParam p(a, b, c, d, e); | 1103 ReplyParam p(a, b, c, d, e); |
| 1095 WriteParam(reply, p); | 1104 WriteParam(reply, p); |
| 1096 } | 1105 } |
| 1097 }; | 1106 }; |
| 1098 | 1107 |
| 1099 //----------------------------------------------------------------------------- | 1108 //----------------------------------------------------------------------------- |
| 1100 | 1109 |
| 1101 } // namespace IPC | 1110 } // namespace IPC |
| 1102 | 1111 |
| 1103 #endif // IPC_IPC_MESSAGE_UTILS_H_ | 1112 #endif // IPC_IPC_MESSAGE_UTILS_H_ |
| OLD | NEW |