Index: media/video/capture/video_capture_device_factory.h |
diff --git a/media/video/capture/video_capture_device_factory.h b/media/video/capture/video_capture_device_factory.h |
index 152f46c083d119d9911c5607d0fe30081319636c..de4e0b49b85a310b618c57e0f2d8f05841b56a06 100644 |
--- a/media/video/capture/video_capture_device_factory.h |
+++ b/media/video/capture/video_capture_device_factory.h |
@@ -16,18 +16,19 @@ namespace media { |
// in Device Thread (a.k.a. Audio Thread). |
class MEDIA_EXPORT VideoCaptureDeviceFactory { |
public: |
- static scoped_ptr<VideoCaptureDeviceFactory> CreateFactory(); |
+ static scoped_ptr<VideoCaptureDeviceFactory> CreateFactory( |
+ scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner); |
VideoCaptureDeviceFactory(); |
virtual ~VideoCaptureDeviceFactory(); |
// Creates a VideoCaptureDevice object. Returns NULL if something goes wrong. |
virtual scoped_ptr<VideoCaptureDevice> Create( |
- scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner, |
- const VideoCaptureDevice::Name& device_name); |
+ const VideoCaptureDevice::Name& device_name) = 0; |
- // Gets the names of all video capture devices connected to this computer. |
- virtual void GetDeviceNames(VideoCaptureDevice::Names* device_names); |
+ // Asynchronous version of GetDeviceNames calling back to |callback|. |
+ virtual void EnumerateDeviceNames( |
+ const base::Callback<void(media::VideoCaptureDevice::Names&)>& callback); |
// Gets the supported formats of a particular device attached to the system. |
// This method should be called before allocating or starting a device. In |
@@ -35,12 +36,15 @@ class MEDIA_EXPORT VideoCaptureDeviceFactory { |
// formats array will be empty. |
virtual void GetDeviceSupportedFormats( |
const VideoCaptureDevice::Name& device, |
- VideoCaptureFormats* supported_formats); |
+ VideoCaptureFormats* supported_formats) = 0; |
protected: |
base::ThreadChecker thread_checker_; |
private: |
+ // Gets the names of all video capture devices connected to this computer. |
+ virtual void GetDeviceNames(VideoCaptureDevice::Names* device_names) = 0; |
perkj_chrome
2014/05/26 11:49:42
Should this really be pure virtual? I don-t think
mcasas
2014/05/26 13:00:18
I think so: all derived classes are obliged to
pro
|
+ |
DISALLOW_COPY_AND_ASSIGN(VideoCaptureDeviceFactory); |
}; |