OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef CONTENT_RENDERER_MEDIA_MEDIA_STREAM_SOURCE_H_ | 5 #ifndef CONTENT_RENDERER_MEDIA_MEDIA_STREAM_SOURCE_H_ |
6 #define CONTENT_RENDERER_MEDIA_MEDIA_STREAM_SOURCE_H_ | 6 #define CONTENT_RENDERER_MEDIA_MEDIA_STREAM_SOURCE_H_ |
7 | 7 |
8 #include "base/callback.h" | 8 #include "base/callback.h" |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
11 #include "content/common/content_export.h" | 11 #include "content/common/content_export.h" |
12 #include "content/common/media/media_stream_options.h" | 12 #include "content/common/media/media_stream_options.h" |
13 #include "third_party/WebKit/public/platform/WebMediaStreamSource.h" | 13 #include "third_party/WebKit/public/platform/WebMediaStreamSource.h" |
14 | 14 |
15 namespace blink { | 15 namespace blink { |
16 class WebMediaStreamTrack; | 16 class WebMediaStreamTrack; |
17 } // namespace blink | 17 } // namespace blink |
18 | 18 |
19 namespace content { | 19 namespace content { |
20 | 20 |
21 class CONTENT_EXPORT MediaStreamSource | 21 class CONTENT_EXPORT MediaStreamSource |
22 : NON_EXPORTED_BASE(public blink::WebMediaStreamSource::ExtraData) { | 22 : NON_EXPORTED_BASE(public blink::WebMediaStreamSource::ExtraData) { |
23 public: | 23 public: |
24 typedef base::Callback<void(const blink::WebMediaStreamSource& source)> | 24 typedef base::Callback<void(const blink::WebMediaStreamSource& source)> |
25 SourceStoppedCallback; | 25 SourceStoppedCallback; |
26 | 26 |
27 typedef base::Callback<void(MediaStreamSource* source, | 27 typedef base::Callback<void(MediaStreamSource* source, |
28 bool success)> ConstraintsCallback; | 28 bool success)> ConstraintsCallback; |
29 | 29 |
| 30 // Source constraints key for |
| 31 // http://dev.w3.org/2011/webrtc/editor/getusermedia.html. |
| 32 static const char kSourceId[]; |
| 33 |
30 MediaStreamSource(); | 34 MediaStreamSource(); |
31 virtual ~MediaStreamSource(); | 35 virtual ~MediaStreamSource(); |
32 | 36 |
33 // Returns device information about a source that has been created by a | 37 // Returns device information about a source that has been created by a |
34 // JavaScript call to GetUserMedia, e.g., a camera or microphone. | 38 // JavaScript call to GetUserMedia, e.g., a camera or microphone. |
35 const StreamDeviceInfo& device_info() const { | 39 const StreamDeviceInfo& device_info() const { |
36 return device_info_; | 40 return device_info_; |
37 } | 41 } |
38 | 42 |
39 // Stops the source (by calling DoStopSource()). This sets the | 43 // Stops the source (by calling DoStopSource()). This sets the |
(...skipping 26 matching lines...) Expand all Loading... |
66 private: | 70 private: |
67 StreamDeviceInfo device_info_; | 71 StreamDeviceInfo device_info_; |
68 SourceStoppedCallback stop_callback_; | 72 SourceStoppedCallback stop_callback_; |
69 | 73 |
70 DISALLOW_COPY_AND_ASSIGN(MediaStreamSource); | 74 DISALLOW_COPY_AND_ASSIGN(MediaStreamSource); |
71 }; | 75 }; |
72 | 76 |
73 } // namespace content | 77 } // namespace content |
74 | 78 |
75 #endif // CONTENT_RENDERER_MEDIA_MEDIA_STREAM_SOURCE_H_ | 79 #endif // CONTENT_RENDERER_MEDIA_MEDIA_STREAM_SOURCE_H_ |
OLD | NEW |