1b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org/* 2b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 3b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * 4b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * Use of this source code is governed by a BSD-style license 5b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * that can be found in the LICENSE file in the root of the source 6b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * tree. An additional intellectual property rights grant can be found 7b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * in the file PATENTS. All contributing project authors may 8b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org * be found in the AUTHORS file in the root of the source tree. 9b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org */ 10b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 115199024f68e61e9cdd1707c243e6052b6a0a0a34sergeyu@chromium.org#include "webrtc/modules/video_capture/device_info_impl.h" 125199024f68e61e9cdd1707c243e6052b6a0a0a34sergeyu@chromium.org#include "webrtc/modules/video_capture/video_capture_impl.h" 13b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 14b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgnamespace webrtc { 15b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 16b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgnamespace videocapturemodule { 17b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 18b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgclass ExternalDeviceInfo : public DeviceInfoImpl { 19b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org public: 20f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org ExternalDeviceInfo(const int32_t id) 21b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org : DeviceInfoImpl(id) { 22b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org } 23b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org virtual ~ExternalDeviceInfo() {} 24f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org virtual uint32_t NumberOfDevices() { return 0; } 25f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org virtual int32_t DisplayCaptureSettingsDialogBox( 26b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org const char* /*deviceUniqueIdUTF8*/, 27b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org const char* /*dialogTitleUTF8*/, 28b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org void* /*parentWindow*/, 29f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org uint32_t /*positionX*/, 30f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org uint32_t /*positionY*/) { return -1; } 31f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org virtual int32_t GetDeviceName( 32f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org uint32_t deviceNumber, 33b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org char* deviceNameUTF8, 34f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org uint32_t deviceNameLength, 35b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org char* deviceUniqueIdUTF8, 36f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org uint32_t deviceUniqueIdUTF8Length, 37b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org char* productUniqueIdUTF8=0, 38f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org uint32_t productUniqueIdUTF8Length=0) { 39b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org return -1; 40b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org } 41f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org virtual int32_t CreateCapabilityMap( 42b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org const char* deviceUniqueIdUTF8) { return 0; } 43f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org virtual int32_t Init() { return 0; } 44b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org}; 45b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 46b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.orgVideoCaptureModule::DeviceInfo* VideoCaptureImpl::CreateDeviceInfo( 47f7e44d647cd0f893a185dfbe043cb313cab29fd0pbos@webrtc.org const int32_t id) { 48b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org return new ExternalDeviceInfo(id); 49b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org} 50b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 51b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org} // namespace videocapturemodule 52b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org 53b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org} // namespace webrtc 54