OLD | NEW |
| (Empty) |
1 // Copyright 2015 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_MEDIA_ROUTER_MEDIA_SOURCE_HELPER_H_ | |
6 #define CHROME_BROWSER_MEDIA_ROUTER_MEDIA_SOURCE_HELPER_H_ | |
7 | |
8 #include <string> | |
9 | |
10 #include "chrome/browser/media/router/media_source.h" | |
11 | |
12 class GURL; | |
13 | |
14 namespace content { | |
15 class WebContents; | |
16 } | |
17 | |
18 namespace media_router { | |
19 | |
20 // Helper library for protocol-specific media source object creation. | |
21 // Returns MediaSource URI depending on the type of source. | |
22 MediaSource MediaSourceForTab(int tab_id); | |
23 MediaSource MediaSourceForTabContentRemoting(content::WebContents* contents); | |
24 MediaSource MediaSourceForDesktop(); | |
25 MediaSource MediaSourceForPresentationUrl(const GURL& presentation_url); | |
26 | |
27 // Returns true if |source| outputs its content via mirroring. | |
28 bool IsDesktopMirroringMediaSource(const MediaSource& source); | |
29 bool IsTabMirroringMediaSource(const MediaSource& source); | |
30 bool IsMirroringMediaSource(const MediaSource& source); | |
31 | |
32 // Returns true if |source| is a media source type that can be connected to the | |
33 // Presentation API by from a request initiated by the browser. | |
34 bool CanConnectToMediaSource(const MediaSource& source); | |
35 | |
36 // Parses the |source| and returns the SessionTabHelper tab ID referencing a | |
37 // source tab. Returns a non-positive value on error. | |
38 int TabIdFromMediaSource(const MediaSource& source); | |
39 | |
40 // Checks that |source| is a parseable URN and is of a known type. | |
41 // Does not deeper protocol-level syntax checks. | |
42 bool IsValidMediaSource(const MediaSource& source); | |
43 | |
44 // Returns true if |url| is a valid presentation URL. | |
45 bool IsValidPresentationUrl(const GURL& url); | |
46 | |
47 // Returns true if |presentation_id| is an ID used by auto-join requests. | |
48 bool IsAutoJoinPresentationId(const std::string& presentation_id); | |
49 | |
50 } // namespace media_router | |
51 | |
52 #endif // CHROME_BROWSER_MEDIA_ROUTER_MEDIA_SOURCE_HELPER_H_ | |
OLD | NEW |