Chromium Code Reviews| 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); |
| }; |