summaryrefslogtreecommitdiffstats
path: root/media/media.gyp
diff options
context:
space:
mode:
authormcasas@chromium.org <mcasas@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-21 01:49:20 +0000
committermcasas@chromium.org <mcasas@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-21 01:49:20 +0000
commitcf6c86f8d7288f0a46a9310f85101cb050d0a46d (patch)
tree5fa9e8556b181857a9b44af3e3d3b28dd44e2b19 /media/media.gyp
parent698d02886293c3d303e8a7b9644eb4425015f62d (diff)
downloadchromium_src-cf6c86f8d7288f0a46a9310f85101cb050d0a46d.zip
chromium_src-cf6c86f8d7288f0a46a9310f85101cb050d0a46d.tar.gz
chromium_src-cf6c86f8d7288f0a46a9310f85101cb050d0a46d.tar.bz2
VideoCaptureDeviceWin: Extract class-static method into a Factory (both MF/DS)
This CL extends the separation Factory/device initiated in the other CLs part of the bug. Aside from code cleanup, it allows for better testing (via dependency injection) of the factory parts (this is specially important for blacklisted devices, of which there are none in Win ATM). It can also be used to modify the GetDeviceNames() method to an asynchronous API. Both VideoCaptureDeviceWin and VideoCaptureDeviceMFwin (using DirectShow and MediaFoundation APIs resp.), have a number of static methods Create(), GetDeviceNames() and GetDeviceSupportedFormats(). Plus, there are overarching versions of those at the VideoCaptureDevice level, that do library initialisation and appropriate forwarding to one or the other implementation. This CL extracts all of those class-static methods and moves them to a single VideoCaptureDeviceFactoryWin. ScopedMediaType, previously file-level data type moves to the public def of VideoCaptureDeviceWin since is used in the Factory. Every file-static function and variable that could, has been moved to the Factory file. Previous file-level static functions that are used in the Factory and the VCD have been changed to VCD static methods and used in both ends. TBR= dalecurtis@chromium.org (media/media.gyp) BUG=323913 Review URL: https://codereview.chromium.org/276383002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271800 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/media.gyp')
-rw-r--r--media/media.gyp2
1 files changed, 2 insertions, 0 deletions
diff --git a/media/media.gyp b/media/media.gyp
index 6513132..bfe7627 100644
--- a/media/media.gyp
+++ b/media/media.gyp
@@ -505,6 +505,8 @@
'video/capture/win/sink_filter_win.h',
'video/capture/win/sink_input_pin_win.cc',
'video/capture/win/sink_input_pin_win.h',
+ 'video/capture/win/video_capture_device_factory_win.cc',
+ 'video/capture/win/video_capture_device_factory_win.h',
'video/capture/win/video_capture_device_mf_win.cc',
'video/capture/win/video_capture_device_mf_win.h',
'video/capture/win/video_capture_device_win.cc',