| Index: Source/platform/mediastream/MediaStreamDescriptor.h
|
| diff --git a/Source/platform/mediastream/MediaStreamDescriptor.h b/Source/platform/mediastream/MediaStreamDescriptor.h
|
| index b6a4b7b4a2c040342e906ce56f7e807048ef395c..6e0b1b011a2eae38a6cb6b14dd5c8473a7248efd 100644
|
| --- a/Source/platform/mediastream/MediaStreamDescriptor.h
|
| +++ b/Source/platform/mediastream/MediaStreamDescriptor.h
|
| @@ -32,25 +32,24 @@
|
| #ifndef MediaStreamDescriptor_h
|
| #define MediaStreamDescriptor_h
|
|
|
| -#include "platform/heap/Handle.h"
|
| #include "platform/mediastream/MediaStreamComponent.h"
|
| #include "platform/mediastream/MediaStreamSource.h"
|
| #include "wtf/PassOwnPtr.h"
|
| +#include "wtf/RefCounted.h"
|
| #include "wtf/Vector.h"
|
|
|
| namespace blink {
|
|
|
| -class MediaStreamDescriptorClient : public GarbageCollectedMixin {
|
| +class MediaStreamDescriptorClient {
|
| public:
|
| virtual ~MediaStreamDescriptorClient() { }
|
|
|
| virtual void streamEnded() = 0;
|
| virtual void addRemoteTrack(MediaStreamComponent*) = 0;
|
| virtual void removeRemoteTrack(MediaStreamComponent*) = 0;
|
| - virtual void trace(Visitor*) { }
|
| };
|
|
|
| -class PLATFORM_EXPORT MediaStreamDescriptor FINAL : public GarbageCollectedFinalized<MediaStreamDescriptor> {
|
| +class PLATFORM_EXPORT MediaStreamDescriptor FINAL : public RefCounted<MediaStreamDescriptor> {
|
| public:
|
| class ExtraData {
|
| public:
|
| @@ -58,11 +57,11 @@
|
| };
|
|
|
| // Only used for AudioDestinationNode.
|
| - static MediaStreamDescriptor* create(const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources);
|
| + static PassRefPtr<MediaStreamDescriptor> create(const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources);
|
|
|
| - static MediaStreamDescriptor* create(const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents);
|
| + static PassRefPtr<MediaStreamDescriptor> create(const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents);
|
|
|
| - static MediaStreamDescriptor* create(const String& id, const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents);
|
| + static PassRefPtr<MediaStreamDescriptor> create(const String& id, const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents);
|
|
|
| MediaStreamDescriptorClient* client() const { return m_client; }
|
| void setClient(MediaStreamDescriptorClient* client) { m_client = client; }
|
| @@ -75,8 +74,8 @@
|
| unsigned numberOfVideoComponents() const { return m_videoComponents.size(); }
|
| MediaStreamComponent* videoComponent(unsigned index) const { return m_videoComponents[index].get(); }
|
|
|
| - void addComponent(MediaStreamComponent*);
|
| - void removeComponent(MediaStreamComponent*);
|
| + void addComponent(PassRefPtr<MediaStreamComponent>);
|
| + void removeComponent(PassRefPtr<MediaStreamComponent>);
|
|
|
| void addRemoteTrack(MediaStreamComponent*);
|
| void removeRemoteTrack(MediaStreamComponent*);
|
| @@ -87,21 +86,21 @@
|
| ExtraData* extraData() const { return m_extraData.get(); }
|
| void setExtraData(PassOwnPtr<ExtraData> extraData) { m_extraData = extraData; }
|
|
|
| - void trace(Visitor*);
|
| -
|
| private:
|
| MediaStreamDescriptor(const String& id, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources);
|
| MediaStreamDescriptor(const String& id, const MediaStreamComponentVector& audioComponents, const MediaStreamComponentVector& videoComponents);
|
|
|
| - Member<MediaStreamDescriptorClient> m_client;
|
| + MediaStreamDescriptorClient* m_client;
|
| String m_id;
|
| - MediaStreamComponentVector m_audioComponents;
|
| - MediaStreamComponentVector m_videoComponents;
|
| + Vector<RefPtr<MediaStreamComponent> > m_audioComponents;
|
| + Vector<RefPtr<MediaStreamComponent> > m_videoComponents;
|
| bool m_ended;
|
|
|
| OwnPtr<ExtraData> m_extraData;
|
| };
|
|
|
| +typedef Vector<RefPtr<MediaStreamDescriptor> > MediaStreamDescriptorVector;
|
| +
|
| } // namespace blink
|
|
|
| #endif // MediaStreamDescriptor_h
|
|
|