Index: Source/platform/graphics/media/MediaPlayer.h |
diff --git a/Source/platform/graphics/media/MediaPlayer.h b/Source/platform/graphics/media/MediaPlayer.h |
index a4d7ccdcac9f7590937e4603dd97d7403416489c..064aad205a3ad71e121ef27dd83ac69169b168cc 100644 |
--- a/Source/platform/graphics/media/MediaPlayer.h |
+++ b/Source/platform/graphics/media/MediaPlayer.h |
@@ -28,6 +28,7 @@ |
#include "platform/PlatformExport.h" |
#include "platform/graphics/GraphicsTypes3D.h" |
+#include "platform/heap/Handle.h" |
#include "public/platform/WebMediaPlayer.h" |
#include "wtf/Forward.h" |
#include "wtf/Noncopyable.h" |
@@ -55,10 +56,12 @@ class TimeRanges; |
typedef unsigned GC3Denum; |
typedef int GC3Dint; |
-class MediaPlayerClient { |
+class MediaPlayerClient : public WillBeGarbageCollectedMixin { |
public: |
virtual ~MediaPlayerClient() { } |
+ virtual void trace(Visitor*) { } |
+ |
// the network state has changed |
virtual void mediaPlayerNetworkStateChanged() = 0; |
@@ -97,12 +100,12 @@ public: |
virtual void mediaPlayerMediaSourceOpened(blink::WebMediaSource*) = 0; |
}; |
-typedef PassOwnPtr<MediaPlayer> (*CreateMediaEnginePlayer)(MediaPlayerClient*); |
+typedef PassOwnPtrWillBeRawPtr<MediaPlayer> (*CreateMediaEnginePlayer)(MediaPlayerClient*); |
-class PLATFORM_EXPORT MediaPlayer { |
+class PLATFORM_EXPORT MediaPlayer : public WillBeGarbageCollectedMixin { |
WTF_MAKE_NONCOPYABLE(MediaPlayer); |
public: |
- static PassOwnPtr<MediaPlayer> create(MediaPlayerClient*); |
+ static PassOwnPtrWillBeRawPtr<MediaPlayer> create(MediaPlayerClient*); |
static void setMediaEngineCreateFunction(CreateMediaEnginePlayer); |
static double invalidTime() { return -1.0; } |
@@ -110,6 +113,10 @@ public: |
MediaPlayer() { } |
virtual ~MediaPlayer() { } |
+ virtual void trace(Visitor*) { } |
+ |
+ virtual void detach() = 0; |
+ |
virtual void load(blink::WebMediaPlayer::LoadType, const String& url, blink::WebMediaPlayer::CORSMode) = 0; |
virtual void play() = 0; |