12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file.
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/values.h"
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "content/common/content_export.h"
72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ipc/ipc_message_macros.h"
82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#undef IPC_MESSAGE_EXPORT
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define IPC_MESSAGE_EXPORT CONTENT_EXPORT
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define IPC_MESSAGE_START PeerConnectionTrackerMsgStart
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_STRUCT_BEGIN(PeerConnectionInfo)
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_MEMBER(int, lid)
155f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  IPC_STRUCT_MEMBER(std::string, rtc_configuration)
162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_MEMBER(std::string, constraints)
172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_MEMBER(std::string, url)
182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_STRUCT_END()
192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Messages sent from PeerConnectionTracker to PeerConnectionTrackerHost.
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PeerConnectionTrackerHost_AddPeerConnection,
222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PeerConnectionInfo /* info */)
232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PeerConnectionTrackerHost_RemovePeerConnection,
242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int /* lid */)
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PeerConnectionTrackerHost_UpdatePeerConnection,
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int /* lid */,
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::string /* type */,
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::string /* value */)
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PeerConnectionTrackerHost_AddStats,
302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int /* lid */,
312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::ListValue /* value */)
325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL5(PeerConnectionTrackerHost_GetUserMedia,
335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     std::string /*origin*/,
345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     bool /*audio*/,
355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     bool /*video*/,
365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     // The constraints strings are for dispaly only and should
375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     // not be parsed by the browser for security reasons.
385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     std::string /* audio_constraints */,
395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     std::string /* video_constraints */)
402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Messages sent to PeerConnectionTracker.
422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PeerConnectionTracker_GetAllStats)
4303b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PeerConnectionTracker_OnSuspend)
44