| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef EXTENSIONS_SHELL_BROWSER_MEDIA_CAPTURE_UTIL_H_ |
| #define EXTENSIONS_SHELL_BROWSER_MEDIA_CAPTURE_UTIL_H_ |
| |
| #include "base/macros.h" |
| #include "content/public/common/media_stream_request.h" |
| |
| namespace content { |
| class WebContents; |
| } |
| |
| namespace extensions { |
| |
| class Extension; |
| |
| namespace media_capture_util { |
| |
| // Grants access to audio and video capture devices. |
| // * If the caller requests specific device ids, grants access to those. |
| // * If the caller does not request specific ids, grants access to the first |
| // available device. |
| // Usually used as a helper for media capture ProcessMediaAccessRequest(). |
| void GrantMediaStreamRequest(content::WebContents* web_contents, |
| const content::MediaStreamRequest& request, |
| const content::MediaResponseCallback& callback, |
| const Extension* extension); |
| |
| // Verifies that the extension has permission for |type|. If not, crash. |
| void VerifyMediaAccessPermission(content::MediaStreamType type, |
| const Extension* extension); |
| |
| } // namespace media_capture_util |
| } // namespace extensions |
| |
| #endif // EXTENSIONS_SHELL_BROWSER_MEDIA_CAPTURE_UTIL_H_ |