Index: content/browser/renderer_host/media/media_stream_manager.cc |
=================================================================== |
--- content/browser/renderer_host/media/media_stream_manager.cc (revision 123165) |
+++ content/browser/renderer_host/media/media_stream_manager.cc (working copy) |
@@ -14,12 +14,15 @@ |
#include "content/browser/renderer_host/media/media_stream_device_settings.h" |
#include "content/browser/renderer_host/media/media_stream_requester.h" |
#include "content/browser/renderer_host/media/video_capture_manager.h" |
+#include "content/browser/resource_context_impl.h" |
#include "content/common/media/media_stream_options.h" |
#include "content/public/browser/browser_thread.h" |
#include "media/audio/audio_manager.h" |
using content::BrowserThread; |
+static const char* kMediaStreamManagerKeyName = "content_media_stream_manager"; |
tommi (sloooow) - chröme
2012/02/23 07:50:59
char[] instead of char*
jam
2012/02/23 08:05:09
what's the reason for this? i see both styles in t
tommi (sloooow) - chröme
2012/02/23 08:20:29
The practical difference is that in this example:
|
+ |
namespace media_stream { |
// Creates a random label used to identify requests. |
@@ -93,6 +96,19 @@ |
StreamDeviceInfoArray video_devices; |
}; |
+// static |
+MediaStreamManager* MediaStreamManager::GetForResourceContext( |
+ content::ResourceContext* resource_context, |
+ AudioManager* audio_manager) { |
+ MediaStreamManager* rv = static_cast<MediaStreamManager*>( |
+ resource_context->GetUserData(kMediaStreamManagerKeyName)); |
+ if (!rv) { |
+ rv = new MediaStreamManager(audio_manager); |
+ resource_context->SetUserData(kMediaStreamManagerKeyName, rv); |
+ } |
+ return rv; |
+} |
+ |
MediaStreamManager::MediaStreamManager(AudioManager* audio_manager) |
: ALLOW_THIS_IN_INITIALIZER_LIST( |
device_settings_(new MediaStreamDeviceSettings(this))), |