Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1352)

Unified Diff: content/browser/renderer_host/media/media_stream_manager.h

Issue 7649016: Removing singleton property of MediaStreamManager and creating thread first when needed. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/media/media_stream_manager.h
diff --git a/content/browser/renderer_host/media/media_stream_manager.h b/content/browser/renderer_host/media/media_stream_manager.h
index f5792ce80d3a216199074f1831c5f03ce0665c72..e208659c9a19cf24e315242646801bbf66e1fc16 100644
--- a/content/browser/renderer_host/media/media_stream_manager.h
+++ b/content/browser/renderer_host/media/media_stream_manager.h
@@ -23,7 +23,8 @@
#include <string>
#include <vector>
-#include "base/lazy_instance.h"
+#include "base/basictypes.h"
+#include "base/memory/ref_counted.h"
#include "content/browser/renderer_host/media/media_stream_provider.h"
#include "content/browser/renderer_host/media/media_stream_settings_requester.h"
#include "content/common/media/media_stream_options.h"
@@ -39,14 +40,15 @@ class VideoCaptureManager;
// The classes requesting new media streams are answered using
// MediaStreamManager::Listener.
class MediaStreamManager
- : public MediaStreamProviderListener,
+ : public base::RefCounted<media_stream::MediaStreamManager>,
willchan no longer on Chromium 2011/08/17 19:55:19 Why is this refcounted? Who owns this object? It's
mflodman_chromium_OOO 2011/08/19 11:07:09 Done, removed ref counted and replaced scoped_refp
+ public MediaStreamProviderListener,
public SettingsRequester {
public:
typedef MediaStreamManager* (AccessorMethod)();
wjia(left Chromium) 2011/08/17 21:13:54 is this still in use?
mflodman_chromium_OOO 2011/08/19 11:07:09 Removed, done.
- static MediaStreamManager* Get();
- virtual ~MediaStreamManager();
- // Used to access VideoCaptuerManager.
+ MediaStreamManager();
+
+ // Used to access VideoCaptureManager.
VideoCaptureManager* video_capture_manager();
// GenerateStream opens new media devices according to |components|. The
@@ -83,6 +85,9 @@ class MediaStreamManager
void UseFakeDevice();
private:
+ friend class base::RefCounted<MediaStreamManager>;
+ virtual ~MediaStreamManager();
+
// Contains all data needed to keep track of requests.
struct DeviceRequest {
DeviceRequest();
@@ -106,12 +111,7 @@ class MediaStreamManager
// Helpers.
bool RequestDone(const MediaStreamManager::DeviceRequest& request) const;
- MediaStreamProvider* GetDeviceManager(MediaStreamType stream_type) const;
-
- // Private constructor to enforce singleton.
- friend struct base::DefaultLazyInstanceTraits<MediaStreamManager>;
- MediaStreamManager();
-
+ MediaStreamProvider* GetDeviceManager(MediaStreamType stream_type);
VideoCaptureManager* video_capture_manager_;
// TODO(mflodman) Add AudioInputManager.

Powered by Google App Engine
This is Rietveld 408576698