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

Unified Diff: Source/core/html/MediaProvider.h

Issue 545933002: Implement HTMLMediaElement::srcObject. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: New approach - with #includes that violate checkdeps rules Created 6 years, 3 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: Source/core/html/MediaProvider.h
diff --git a/Source/platform/mediastream/RTCVoidRequest.h b/Source/core/html/MediaProvider.h
similarity index 62%
copy from Source/platform/mediastream/RTCVoidRequest.h
copy to Source/core/html/MediaProvider.h
index ac44ae13c751094b564ea03938ed6d7e92422d59..9fb216ab778df1101ae572a86a70eaf1adda18ec 100644
--- a/Source/platform/mediastream/RTCVoidRequest.h
+++ b/Source/core/html/MediaProvider.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2012 Google Inc. All rights reserved.
+ * Copyright (C) 2014 Google Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -28,39 +28,40 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef RTCVoidRequest_h
-#define RTCVoidRequest_h
+#ifndef MediaProvider_h
+#define MediaProvider_h
#include "platform/heap/Handle.h"
-#include "wtf/PassOwnPtr.h"
-#include "wtf/text/WTFString.h"
+#include "wtf/Assertions.h"
+#include "wtf/RefCounted.h"
namespace blink {
-class RTCVoidRequest : public GarbageCollectedFinalized<RTCVoidRequest> {
-public:
- class ExtraData {
- public:
- virtual ~ExtraData() { }
- };
+ class ExecutionContext;
+ class MediaStream;
+ class MediaSource;
+ class Blob;
- virtual ~RTCVoidRequest() { }
+ class MediaProvider FINAL : public RefCountedWillBeGarbageCollected<MediaProvider> {
+ public:
+ static PassRefPtrWillBeRawPtr<MediaProvider> createFromMediaStream(PassRefPtrWillBeRawPtr<MediaStream>);
+ static PassRefPtrWillBeRawPtr<MediaProvider> createFromMediaSource(PassRefPtrWillBeRawPtr<MediaSource>);
- virtual void requestSucceeded() = 0;
- virtual void requestFailed(const String& error) = 0;
+ MediaStream* mediaStream() const;
+ MediaSource* mediaSource() const;
- ExtraData* extraData() const { return m_extraData.get(); }
- void setExtraData(PassOwnPtr<ExtraData> extraData) { m_extraData = extraData; }
+ String createObjectUrl();
- virtual void trace(Visitor*) { }
+ void trace(Visitor*);
-protected:
- RTCVoidRequest() { }
+ private:
+ MediaProvider(PassRefPtrWillBeRawPtr<MediaSource>);
+ MediaProvider(PassRefPtrWillBeRawPtr<MediaStream>);
-private:
- OwnPtr<ExtraData> m_extraData;
-};
+ PersistentWillBeMember<MediaStream> m_mediastream;
+ PersistentWillBeMember<MediaSource> m_mediasource;
+ };
} // namespace blink
-#endif // RTCVoidRequest_h
+#endif

Powered by Google App Engine
This is Rietveld 408576698