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

Unified Diff: Source/modules/mediastream/MediaStream.h

Issue 173363002: Move mediastream module to oilpan transition types (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fixed RTCPeerConnection destructor 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: Source/modules/mediastream/MediaStream.h
diff --git a/Source/modules/mediastream/MediaStream.h b/Source/modules/mediastream/MediaStream.h
index 8ecd6f628a7c938954db363a28a93cdc1ab5c9dc..bb0f216b38db44335c4e456b321e809693dd3588 100644
--- a/Source/modules/mediastream/MediaStream.h
+++ b/Source/modules/mediastream/MediaStream.h
@@ -40,13 +40,14 @@ namespace WebCore {
class ExceptionState;
-class MediaStream FINAL : public RefCounted<MediaStream>, public ScriptWrappable, public URLRegistrable, public MediaStreamDescriptorClient, public EventTargetWithInlineData, public ContextLifecycleObserver, public MediaStreamTrack::Observer {
- REFCOUNTED_EVENT_TARGET(MediaStream);
+class MediaStream FINAL : public RefCountedWillBeRefCountedGarbageCollected<MediaStream>, public ScriptWrappable,
+ public URLRegistrable, public MediaStreamDescriptorClient, public EventTargetWithInlineData, public ContextLifecycleObserver {
+ DEFINE_EVENT_TARGET_REFCOUNTING(RefCountedWillBeRefCountedGarbageCollected<MediaStream>);
public:
- static PassRefPtr<MediaStream> create(ExecutionContext*);
- static PassRefPtr<MediaStream> create(ExecutionContext*, PassRefPtr<MediaStream>);
- static PassRefPtr<MediaStream> create(ExecutionContext*, const MediaStreamTrackVector&);
- static PassRefPtr<MediaStream> create(ExecutionContext*, PassRefPtr<MediaStreamDescriptor>);
+ static PassRefPtrWillBeRawPtr<MediaStream> create(ExecutionContext*);
+ static PassRefPtrWillBeRawPtr<MediaStream> create(ExecutionContext*, PassRefPtrWillBeRawPtr<MediaStream>);
+ static PassRefPtrWillBeRawPtr<MediaStream> create(ExecutionContext*, const MediaStreamTrackVector&);
+ static PassRefPtrWillBeRawPtr<MediaStream> create(ExecutionContext*, PassRefPtr<MediaStreamDescriptor>);
virtual ~MediaStream();
// DEPRECATED
@@ -54,10 +55,10 @@ public:
String id() const { return m_descriptor->id(); }
- void addTrack(PassRefPtr<MediaStreamTrack>, ExceptionState&);
- void removeTrack(PassRefPtr<MediaStreamTrack>, ExceptionState&);
+ void addTrack(PassRefPtrWillBeRawPtr<MediaStreamTrack>, ExceptionState&);
+ void removeTrack(PassRefPtrWillBeRawPtr<MediaStreamTrack>, ExceptionState&);
MediaStreamTrack* getTrackById(String);
- PassRefPtr<MediaStream> clone(ExecutionContext*);
+ PassRefPtrWillBeRawPtr<MediaStream> clone(ExecutionContext*);
MediaStreamTrackVector getAudioTracks() const { return m_audioTracks; }
MediaStreamTrackVector getVideoTracks() const { return m_videoTracks; }
@@ -69,8 +70,7 @@ public:
DEFINE_ATTRIBUTE_EVENT_LISTENER(addtrack);
DEFINE_ATTRIBUTE_EVENT_LISTENER(removetrack);
- // MediaStreamTrack::Observer
- virtual void trackEnded() OVERRIDE;
+ void trackEnded();
// MediaStreamDescriptorClient
virtual void streamEnded() OVERRIDE;
@@ -84,6 +84,8 @@ public:
// URLRegistrable
virtual URLRegistry& registry() const OVERRIDE;
+ virtual void trace(Visitor*);
haraken 2014/05/08 05:08:39 Remove virtual.
keishi 2014/05/09 01:53:54 Done.
+
private:
MediaStream(ExecutionContext*, PassRefPtr<MediaStreamDescriptor>);
MediaStream(ExecutionContext*, const MediaStreamTrackVector& audioTracks, const MediaStreamTrackVector& videoTracks);
@@ -105,10 +107,10 @@ private:
RefPtr<MediaStreamDescriptor> m_descriptor;
Timer<MediaStream> m_scheduledEventTimer;
- WillBePersistentHeapVector<RefPtrWillBeMember<Event> > m_scheduledEvents;
+ WillBeHeapVector<RefPtrWillBeMember<Event> > m_scheduledEvents;
};
-typedef Vector<RefPtr<MediaStream> > MediaStreamVector;
+typedef WillBeHeapVector<RefPtrWillBeMember<MediaStream> > MediaStreamVector;
} // namespace WebCore

Powered by Google App Engine
This is Rietveld 408576698