- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / browser / extensions / api / cast_channel / cast_message_util.h
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CHROME_BROWSER_EXTENSIONS_API_CAST_CHANNEL_CAST_MESSAGE_UTIL_H_
6 #define CHROME_BROWSER_EXTENSIONS_API_CAST_CHANNEL_CAST_MESSAGE_UTIL_H_
7
8 #include <string>
9
10 namespace extensions {
11 namespace api {
12 namespace cast_channel {
13
14 class CastMessage;
15 class DeviceAuthMessage;
16 struct MessageInfo;
17
18 // Fills |message_proto| from |message| and returns true on success.
19 bool MessageInfoToCastMessage(const MessageInfo& message,
20                               CastMessage* message_proto);
21
22 // Fills |message| from |message_proto| and returns true on success.
23 bool CastMessageToMessageInfo(const CastMessage& message_proto,
24                               MessageInfo* message);
25
26 // Returns a human readable string for |message_proto|.
27 std::string CastMessageToString(const CastMessage& message_proto);
28
29 // Returns a human readable string for |message|.
30 std::string AuthMessageToString(const DeviceAuthMessage& message);
31
32 // Fills |message_proto| appropriately for an auth challenge request message.
33 void CreateAuthChallengeMessage(CastMessage* message_proto);
34
35 // Returns whether the given message is an auth handshake message.
36 bool IsAuthMessage(const CastMessage& message);
37
38 }  // namespace cast_channel
39 }  // namespace api
40 }  // namespace extensions
41
42 #endif  // CHROME_BROWSER_EXTENSIONS_API_CAST_CHANNEL_CAST_MESSAGE_UTIL_H_