summaryrefslogtreecommitdiffstats
path: root/content/renderer/media/video_capture_module_impl_device_info.h
diff options
context:
space:
mode:
Diffstat (limited to 'content/renderer/media/video_capture_module_impl_device_info.h')
-rw-r--r--content/renderer/media/video_capture_module_impl_device_info.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/content/renderer/media/video_capture_module_impl_device_info.h b/content/renderer/media/video_capture_module_impl_device_info.h
new file mode 100644
index 0000000..8cf9699
--- /dev/null
+++ b/content/renderer/media/video_capture_module_impl_device_info.h
@@ -0,0 +1,54 @@
+// Copyright (c) 2011 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 CONTENT_RENDERER_MEDIA_VIDEO_CAPTURE_MODULE_IMPL_DEVICE_INFO_H_
+#define CONTENT_RENDERER_MEDIA_VIDEO_CAPTURE_MODULE_IMPL_DEVICE_INFO_H_
+
+#include "base/basictypes.h"
+#include "third_party/webrtc/modules/video_capture/main/interface/video_capture.h"
+
+// An implementation of webrtc::VideoCaptureModule::DeviceInfo returns device
+// information about video capture on Chrome platform. Actually, this is a dummy
+// class. The real device management is done by media stream on Chrome.
+class VideoCaptureModuleImplDeviceInfo
+ : public webrtc::VideoCaptureModule::DeviceInfo {
+ public:
+ explicit VideoCaptureModuleImplDeviceInfo(const WebRtc_Word32 id);
+ virtual ~VideoCaptureModuleImplDeviceInfo();
+
+ // webrtc::VideoCaptureModule::DeviceInfo implementation.
+ virtual WebRtc_UWord32 NumberOfDevices();
+ virtual WebRtc_Word32 GetDeviceName(
+ WebRtc_UWord32 device_number,
+ WebRtc_UWord8* device_name_utf8,
+ WebRtc_UWord32 device_name_length,
+ WebRtc_UWord8* device_unique_id_utf8,
+ WebRtc_UWord32 device_unique_id_utf8_ength,
+ WebRtc_UWord8* product_unique_id_utf8 = 0,
+ WebRtc_UWord32 product_unique_id_utf8_length = 0);
+ virtual WebRtc_Word32 NumberOfCapabilities(
+ const WebRtc_UWord8* deviceUniqueIdUTF8);
+ virtual WebRtc_Word32 GetCapability(
+ const WebRtc_UWord8* deviceUniqueIdUTF8,
+ const WebRtc_UWord32 deviceCapabilityNumber,
+ webrtc::VideoCaptureCapability& capability);
+ virtual WebRtc_Word32 GetOrientation(
+ const WebRtc_UWord8* deviceUniqueIdUTF8,
+ webrtc::VideoCaptureRotation& orientation);
+ virtual WebRtc_Word32 GetBestMatchedCapability(
+ const WebRtc_UWord8* deviceUniqueIdUTF8,
+ const webrtc::VideoCaptureCapability requested,
+ webrtc::VideoCaptureCapability& resulting);
+ virtual WebRtc_Word32 DisplayCaptureSettingsDialogBox(
+ const WebRtc_UWord8* device_unique_id_utf8,
+ const WebRtc_UWord8* dialog_title_utf8,
+ void* parent_window,
+ WebRtc_UWord32 position_x,
+ WebRtc_UWord32 position_y);
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(VideoCaptureModuleImplDeviceInfo);
+};
+
+#endif // CONTENT_RENDERER_MEDIA_VIDEO_CAPTURE_MODULE_IMPL_DEVICE_INFO_H_