web_contents_capture_util.h revision a1401311d1ab56c4ed0a474bd38c108f75cb0cd9
1// Copyright (c) 2012 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 CONTENT_BROWSER_MEDIA_CAPTURE_WEB_CONTENTS_CAPTURE_UTIL_H_
6#define CONTENT_BROWSER_MEDIA_CAPTURE_WEB_CONTENTS_CAPTURE_UTIL_H_
7
8#include <string>
9
10#include "content/common/content_export.h"
11
12namespace content {
13
14class CONTENT_EXPORT WebContentsCaptureUtil {
15 public:
16  // Returns a new id after appending the device id scheme for virtual streams.
17  static std::string AppendWebContentsDeviceScheme(
18      const std::string& device_id_param);
19
20  static std::string StripWebContentsDeviceScheme(
21      const std::string& device_id_param);
22
23  // Check whether the device id indicates that this is a web contents stream.
24  static bool IsWebContentsDeviceId(const std::string& device_id);
25
26  // Function to extract the target renderer id's from a tab media stream
27  // request's device id.
28  static bool ExtractTabCaptureTarget(const std::string& device_id,
29                                      int* render_process_id,
30                                      int* render_view_id);
31};
32
33}  // namespace content
34
35#endif  // CONTENT_BROWSER_MEDIA_CAPTURE_WEB_CONTENTS_CAPTURE_UTIL_H_
36