Chromium Code Reviews| Index: third_party/WebKit/Source/platform/mediastream/MediaStreamDescriptor.h |
| diff --git a/third_party/WebKit/Source/platform/mediastream/MediaStreamDescriptor.h b/third_party/WebKit/Source/platform/mediastream/MediaStreamDescriptor.h |
| index 8665abf41ce7c614230aa18fc43d41b549f06683..9e3163d63b64a69b91a926783e71f5be370a991e 100644 |
| --- a/third_party/WebKit/Source/platform/mediastream/MediaStreamDescriptor.h |
| +++ b/third_party/WebKit/Source/platform/mediastream/MediaStreamDescriptor.h |
| @@ -49,7 +49,7 @@ public: |
| virtual void removeRemoteTrack(MediaStreamComponent*) = 0; |
| }; |
| -class PLATFORM_EXPORT MediaStreamDescriptor final : public RefCounted<MediaStreamDescriptor> { |
| +class PLATFORM_EXPORT MediaStreamDescriptor final : public GarbageCollectedFinalized<MediaStreamDescriptor> { |
| public: |
| class ExtraData { |
| public: |
| @@ -57,11 +57,11 @@ public: |
| }; |
| // Only used for AudioDestinationNode. |
| - static PassRefPtr<MediaStreamDescriptor> create(const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources); |
| + static MediaStreamDescriptor* create(const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources); |
| - static PassRefPtr<MediaStreamDescriptor> create(const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents); |
| + static MediaStreamDescriptor* create(const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents); |
| - static PassRefPtr<MediaStreamDescriptor> create(const String& id, const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents); |
| + static MediaStreamDescriptor* create(const String& id, const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents); |
| MediaStreamDescriptorClient* client() const { return m_client; } |
| void setClient(MediaStreamDescriptorClient* client) { m_client = client; } |
| @@ -74,8 +74,8 @@ public: |
| unsigned numberOfVideoComponents() const { return m_videoComponents.size(); } |
| MediaStreamComponent* videoComponent(unsigned index) const { return m_videoComponents[index].get(); } |
| - void addComponent(PassRefPtr<MediaStreamComponent>); |
| - void removeComponent(PassRefPtr<MediaStreamComponent>); |
| + void addComponent(MediaStreamComponent*); |
| + void removeComponent(MediaStreamComponent*); |
| void addRemoteTrack(MediaStreamComponent*); |
| void removeRemoteTrack(MediaStreamComponent*); |
| @@ -89,21 +89,23 @@ public: |
| ExtraData* extraData() const { return m_extraData.get(); } |
| void setExtraData(PassOwnPtr<ExtraData> extraData) { m_extraData = extraData; } |
| + DECLARE_TRACE(); |
| + |
| private: |
| MediaStreamDescriptor(const String& id, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources); |
| MediaStreamDescriptor(const String& id, const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents); |
| MediaStreamDescriptorClient* m_client; |
|
sof
2015/09/30 06:26:34
Can you add a comment clarifying lifetime assumpti
peria
2015/09/30 07:50:05
Done.
|
| String m_id; |
| - Vector<RefPtr<MediaStreamComponent>> m_audioComponents; |
| - Vector<RefPtr<MediaStreamComponent>> m_videoComponents; |
| + HeapVector<Member<MediaStreamComponent>> m_audioComponents; |
| + HeapVector<Member<MediaStreamComponent>> m_videoComponents; |
| bool m_active; |
| bool m_ended; |
| OwnPtr<ExtraData> m_extraData; |
| }; |
| -typedef Vector<RefPtr<MediaStreamDescriptor>> MediaStreamDescriptorVector; |
| +typedef HeapVector<Member<MediaStreamDescriptor>> MediaStreamDescriptorVector; |
| } // namespace blink |