OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // VideoCaptureManager is used to open/close, start/stop, enumerate available | 5 // VideoCaptureManager is used to open/close, start/stop, enumerate available |
6 // video capture devices, and manage VideoCaptureController's. | 6 // video capture devices, and manage VideoCaptureController's. |
7 // All functions are expected to be called from Browser::IO thread. | 7 // All functions are expected to be called from Browser::IO thread. |
8 // VideoCaptureManager will open OS dependent instances of VideoCaptureDevice. | 8 // VideoCaptureManager will open OS dependent instances of VideoCaptureDevice. |
9 // A device can only be opened once. | 9 // A device can only be opened once. |
10 | 10 |
11 #ifndef CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_CAPTURE_MANAGER_H_ | 11 #ifndef CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_CAPTURE_MANAGER_H_ |
12 #define CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_CAPTURE_MANAGER_H_ | 12 #define CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_CAPTURE_MANAGER_H_ |
13 | 13 |
14 #include <list> | 14 #include <list> |
15 #include <map> | 15 #include <map> |
16 | 16 |
17 #include "base/memory/ref_counted.h" | 17 #include "base/memory/ref_counted.h" |
18 #include "content/browser/renderer_host/media/media_stream_provider.h" | 18 #include "content/browser/renderer_host/media/media_stream_provider.h" |
19 #include "content/common/content_export.h" | 19 #include "content/common/content_export.h" |
20 #include "content/common/media/media_stream_options.h" | 20 #include "content/common/media/media_stream_options.h" |
21 #include "content/public/browser/browser_thread.h" | |
22 #include "media/video/capture/video_capture_device.h" | 21 #include "media/video/capture/video_capture_device.h" |
23 #include "media/video/capture/video_capture_types.h" | 22 #include "media/video/capture/video_capture_types.h" |
24 | 23 |
25 namespace content { | 24 namespace content { |
26 class MockVideoCaptureManager; | 25 class MockVideoCaptureManager; |
27 class VideoCaptureController; | 26 class VideoCaptureController; |
28 class VideoCaptureControllerEventHandler; | 27 class VideoCaptureControllerEventHandler; |
29 | 28 |
30 // VideoCaptureManager opens/closes and start/stops video capture devices. | 29 // VideoCaptureManager opens/closes and start/stops video capture devices. |
31 class CONTENT_EXPORT VideoCaptureManager : public MediaStreamProvider { | 30 class CONTENT_EXPORT VideoCaptureManager : public MediaStreamProvider { |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 // VideoCaptureDevice is one-to-one mapped to VideoCaptureController. | 153 // VideoCaptureDevice is one-to-one mapped to VideoCaptureController. |
155 typedef std::map<media::VideoCaptureDevice*, Controller*> Controllers; | 154 typedef std::map<media::VideoCaptureDevice*, Controller*> Controllers; |
156 Controllers controllers_; | 155 Controllers controllers_; |
157 | 156 |
158 DISALLOW_COPY_AND_ASSIGN(VideoCaptureManager); | 157 DISALLOW_COPY_AND_ASSIGN(VideoCaptureManager); |
159 }; | 158 }; |
160 | 159 |
161 } // namespace content | 160 } // namespace content |
162 | 161 |
163 #endif // CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_CAPTURE_MANAGER_H_ | 162 #endif // CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_CAPTURE_MANAGER_H_ |
OLD | NEW |