Line data Source code
1 : #ifndef WEBRTC_MODULES_BROWSER_CAPTURE_MAIN_SOURCE_BROWSER_CAPTURE_IMPL_H_
2 : #define WEBRTC_MODULES_BROWSER_CAPTURE_MAIN_SOURCE_BROWSER_CAPTURE_IMPL_H_
3 :
4 : #include "webrtc/modules/video_capture/video_capture.h"
5 :
6 : using namespace webrtc::videocapturemodule;
7 :
8 : namespace webrtc {
9 :
10 : class BrowserDeviceInfoImpl : public VideoCaptureModule::DeviceInfo {
11 : public:
12 0 : virtual uint32_t NumberOfDevices() { return 1; }
13 :
14 0 : virtual int32_t Refresh() { return 0; }
15 :
16 0 : virtual int32_t GetDeviceName(uint32_t deviceNumber,
17 : char* deviceNameUTF8,
18 : uint32_t deviceNameLength,
19 : char* deviceUniqueIdUTF8,
20 : uint32_t deviceUniqueIdUTF8Length,
21 : char* productUniqueIdUTF8 = NULL,
22 : uint32_t productUniqueIdUTF8Length = 0,
23 : pid_t* pid = 0) {
24 0 : deviceNameUTF8 = const_cast<char*>(kDeviceName);
25 0 : deviceUniqueIdUTF8 = const_cast<char*>(kUniqueDeviceName);
26 0 : productUniqueIdUTF8 = const_cast<char*>(kProductUniqueId);
27 0 : return 1;
28 : };
29 :
30 :
31 0 : virtual int32_t NumberOfCapabilities(const char* deviceUniqueIdUTF8) {
32 0 : return 0;
33 : }
34 :
35 0 : virtual int32_t GetCapability(const char* deviceUniqueIdUTF8,
36 : const uint32_t deviceCapabilityNumber,
37 0 : VideoCaptureCapability& capability) { return 0;};
38 :
39 0 : virtual int32_t GetOrientation(const char* deviceUniqueIdUTF8,
40 0 : VideoRotation& orientation) { return 0; }
41 :
42 0 : virtual int32_t GetBestMatchedCapability(const char* deviceUniqueIdUTF8,
43 : const VideoCaptureCapability& requested,
44 0 : VideoCaptureCapability& resulting) { return 0;}
45 :
46 0 : virtual int32_t DisplayCaptureSettingsDialogBox(const char* deviceUniqueIdUTF8,
47 : const char* dialogTitleUTF8,
48 : void* parentWindow,
49 : uint32_t positionX,
50 0 : uint32_t positionY) { return 0; }
51 :
52 0 : BrowserDeviceInfoImpl() : kDeviceName("browser"), kUniqueDeviceName("browser"), kProductUniqueId("browser") {}
53 :
54 0 : static BrowserDeviceInfoImpl* CreateDeviceInfo() {
55 0 : return new BrowserDeviceInfoImpl();
56 : }
57 0 : virtual ~BrowserDeviceInfoImpl() {}
58 :
59 : private:
60 : const char* kDeviceName;
61 : const char* kUniqueDeviceName;
62 : const char* kProductUniqueId;
63 :
64 : };
65 : }
66 : #endif
|