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// Defines the Chrome Extensions Tab Capture API functions for accessing
6// tab media streams.
7
8#ifndef CHROME_BROWSER_EXTENSIONS_API_TAB_CAPTURE_TAB_CAPTURE_API_H_
9#define CHROME_BROWSER_EXTENSIONS_API_TAB_CAPTURE_TAB_CAPTURE_API_H_
10
11#include "chrome/browser/extensions/api/tab_capture/tab_capture_registry.h"
12#include "chrome/browser/extensions/chrome_extension_function.h"
13#include "chrome/common/extensions/api/tab_capture.h"
14
15namespace extensions {
16
17class TabCaptureCaptureFunction : public ChromeSyncExtensionFunction {
18 public:
19  DECLARE_EXTENSION_FUNCTION("tabCapture.capture", TABCAPTURE_CAPTURE)
20
21 protected:
22  virtual ~TabCaptureCaptureFunction() {}
23
24  // ExtensionFunction:
25  virtual bool RunSync() OVERRIDE;
26};
27
28class TabCaptureGetCapturedTabsFunction : public ChromeSyncExtensionFunction {
29 public:
30  DECLARE_EXTENSION_FUNCTION("tabCapture.getCapturedTabs",
31                             TABCAPTURE_GETCAPTUREDTABS)
32
33 protected:
34  virtual ~TabCaptureGetCapturedTabsFunction() {}
35
36  // ExtensionFunction:
37  virtual bool RunSync() OVERRIDE;
38};
39
40}  // namespace extensions
41
42#endif  // CHROME_BROWSER_EXTENSIONS_API_TAB_CAPTURE_TAB_CAPTURE_API_H_
43