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

Unified Diff: content/renderer/media/media_stream_impl.h

Issue 287383002: Implement getMediaDevices. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Removed StopEnumerateDevices in pepper. Created 6 years, 7 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/renderer/media/media_stream_impl.h
diff --git a/content/renderer/media/media_stream_impl.h b/content/renderer/media/media_stream_impl.h
index 4d57e3d924c26a3fa701b196139fc0ec5cd106d7..c2403ae984feeb5cb980880b28c475f5d6f53431 100644
--- a/content/renderer/media/media_stream_impl.h
+++ b/content/renderer/media/media_stream_impl.h
@@ -23,6 +23,7 @@
#include "third_party/WebKit/public/platform/WebMediaStream.h"
#include "third_party/WebKit/public/platform/WebMediaStreamSource.h"
#include "third_party/WebKit/public/platform/WebVector.h"
+#include "third_party/WebKit/public/web/WebMediaDevicesRequest.h"
#include "third_party/WebKit/public/web/WebUserMediaClient.h"
#include "third_party/WebKit/public/web/WebUserMediaRequest.h"
#include "third_party/libjingle/source/talk/app/webrtc/mediastreaminterface.h"
@@ -61,6 +62,10 @@ class CONTENT_EXPORT MediaStreamImpl
const blink::WebUserMediaRequest& user_media_request) OVERRIDE;
virtual void cancelUserMediaRequest(
const blink::WebUserMediaRequest& user_media_request) OVERRIDE;
+ virtual void requestMediaDevices(
+ const blink::WebMediaDevicesRequest& media_devices_request) OVERRIDE;
+ virtual void cancelMediaDevicesRequest(
+ const blink::WebMediaDevicesRequest& media_devices_request) OVERRIDE;
// MediaStreamClient implementation.
virtual bool IsMediaStream(const GURL& url) OVERRIDE;
@@ -184,6 +189,9 @@ class CONTENT_EXPORT MediaStreamImpl
};
typedef std::vector<LocalStreamSource> LocalStreamSources;
+ struct MediaDevicesRequestInfo;
+ typedef ScopedVector<MediaDevicesRequestInfo> MediaDevicesRequests;
+
// Creates a WebKit representation of stream sources based on
// |devices| from the MediaStreamDispatcher.
void InitializeSourceObject(
@@ -216,6 +224,11 @@ class CONTENT_EXPORT MediaStreamImpl
const blink::WebUserMediaRequest& request);
void DeleteUserMediaRequestInfo(UserMediaRequestInfo* request);
+ MediaDevicesRequestInfo* FindMediaDevicesRequestInfo(int request_id);
+ MediaDevicesRequestInfo* FindMediaDevicesRequestInfo(
+ const blink::WebMediaDevicesRequest& request);
+ void DeleteMediaDevicesRequestInfo(MediaDevicesRequestInfo* request);
+
// Returns the source that use a device with |device.session_id|
// and |device.device.id|. NULL if such source doesn't exist.
const blink::WebMediaStreamSource* FindLocalSource(
@@ -254,6 +267,9 @@ class CONTENT_EXPORT MediaStreamImpl
UserMediaRequests user_media_requests_;
+ // Requests to enumerate media devices.
+ MediaDevicesRequests media_devices_requests_;
+
DISALLOW_COPY_AND_ASSIGN(MediaStreamImpl);
};

Powered by Google App Engine
This is Rietveld 408576698