Index: chrome/common/cast_messages.h |
diff --git a/chrome/common/cast_messages.h b/chrome/common/cast_messages.h |
index e10717189ffb17db6e5995c88eaab3e9ced5e578..d6ab6a6bacb4fd8d1dc9ecc66f6184c5f68fb6d4 100644 |
--- a/chrome/common/cast_messages.h |
+++ b/chrome/common/cast_messages.h |
@@ -7,11 +7,45 @@ |
#include "ipc/ipc_message_macros.h" |
#include "media/cast/cast_sender.h" |
+#include "media/cast/common/rtp_time.h" |
#include "media/cast/logging/logging_defines.h" |
#include "media/cast/net/cast_transport_sender.h" |
#include "media/cast/net/rtcp/rtcp_defines.h" |
#include "net/base/ip_endpoint.h" |
+#ifndef CHROME_COMMON_CAST_MESSAGES_H_ |
+#define CHROME_COMMON_CAST_MESSAGES_H_ |
+ |
+template<> |
+struct IPC::ParamTraits<media::cast::RtpTimeTicks> { |
Irfan
2015/12/09 21:24:27
I wonder if this belongs to its own header ?
miu
2015/12/10 00:38:36
I looked at a number of examples elsewhere, and th
|
+ using param_type = media::cast::RtpTimeTicks; |
+ |
+ static void Write(Message* m, const param_type& p) { |
+ auto serialized = p.SerializeForIPC(); |
+ IPC::ParamTraits<decltype(serialized)>::Write(m, serialized); |
+ } |
+ |
+ static bool Read(const Message* m, base::PickleIterator* iter, |
+ param_type* r) { |
+ decltype(r->SerializeForIPC()) serialized; |
+ if (IPC::ParamTraits<decltype(serialized)>::Read(m, iter, &serialized)) { |
+ *r = param_type::DeserializeForIPC(serialized); |
+ return true; |
+ } |
+ return false; |
+ } |
+ |
+ static void Log(const param_type& p, std::string* l) { |
+ std::ostringstream oss; |
+ oss << p; |
+ l->append(oss.str()); |
+ } |
+}; |
+ |
+#endif // CHROME_COMMON_CAST_MESSAGES_H_ |
+ |
+// Multiply-included message file, hence no include guard from here. |
+ |
#undef IPC_MESSAGE_EXPORT |
#define IPC_MESSAGE_EXPORT |
#define IPC_MESSAGE_START CastMsgStart |
@@ -161,7 +195,7 @@ IPC_MESSAGE_CONTROL4( |
int32 /* channel_id */, |
uint32 /* ssrc */, |
base::TimeTicks /* current_time */, |
- uint32 /* current_time_as_rtp_timestamp */) |
+ media::cast::RtpTimeTicks /* current_time_as_rtp_timestamp */) |
IPC_MESSAGE_CONTROL3( |
CastHostMsg_CancelSendingFrames, |