OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * Copyright (C) 2011 Ericsson AB. All rights reserved. | 3 * Copyright (C) 2011 Ericsson AB. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 28 matching lines...) Expand all Loading... |
39 #include "wtf/text/WTFString.h" | 39 #include "wtf/text/WTFString.h" |
40 | 40 |
41 namespace WebCore { | 41 namespace WebCore { |
42 | 42 |
43 class AudioSourceProvider; | 43 class AudioSourceProvider; |
44 class ExceptionState; | 44 class ExceptionState; |
45 class MediaStreamComponent; | 45 class MediaStreamComponent; |
46 class MediaStreamTrackSourcesCallback; | 46 class MediaStreamTrackSourcesCallback; |
47 | 47 |
48 class MediaStreamTrack FINAL : public RefCountedWillBeRefCountedGarbageCollected
<MediaStreamTrack>, public ScriptWrappable, public ActiveDOMObject, public Event
TargetWithInlineData, public MediaStreamSource::Observer { | 48 class MediaStreamTrack FINAL : public RefCountedWillBeRefCountedGarbageCollected
<MediaStreamTrack>, public ScriptWrappable, public ActiveDOMObject, public Event
TargetWithInlineData, public MediaStreamSource::Observer { |
49 DEFINE_EVENT_TARGET_REFCOUNTING(RefCountedWillBeRefCountedGarbageCollected<M
ediaStreamTrack>); | 49 REFCOUNTED_EVENT_TARGET(MediaStreamTrack); |
| 50 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(MediaStreamTrack); |
50 public: | 51 public: |
51 static PassRefPtrWillBeRawPtr<MediaStreamTrack> create(ExecutionContext*, Me
diaStreamComponent*); | 52 static PassRefPtrWillBeRawPtr<MediaStreamTrack> create(ExecutionContext*, Me
diaStreamComponent*); |
52 virtual ~MediaStreamTrack(); | 53 virtual ~MediaStreamTrack(); |
53 | 54 |
54 String kind() const; | 55 String kind() const; |
55 String id() const; | 56 String id() const; |
56 String label() const; | 57 String label() const; |
57 | 58 |
58 bool enabled() const; | 59 bool enabled() const; |
59 void setEnabled(bool); | 60 void setEnabled(bool); |
(...skipping 16 matching lines...) Expand all Loading... |
76 | 77 |
77 // EventTarget | 78 // EventTarget |
78 virtual const AtomicString& interfaceName() const OVERRIDE; | 79 virtual const AtomicString& interfaceName() const OVERRIDE; |
79 virtual ExecutionContext* executionContext() const OVERRIDE; | 80 virtual ExecutionContext* executionContext() const OVERRIDE; |
80 | 81 |
81 // ActiveDOMObject | 82 // ActiveDOMObject |
82 virtual void stop() OVERRIDE; | 83 virtual void stop() OVERRIDE; |
83 | 84 |
84 PassOwnPtr<AudioSourceProvider> createWebAudioSource(); | 85 PassOwnPtr<AudioSourceProvider> createWebAudioSource(); |
85 | 86 |
86 void trace(Visitor*); | 87 virtual void trace(Visitor*) OVERRIDE; |
87 | 88 |
88 private: | 89 private: |
89 MediaStreamTrack(ExecutionContext*, MediaStreamComponent*); | 90 MediaStreamTrack(ExecutionContext*, MediaStreamComponent*); |
90 | 91 |
91 MediaStreamSource::ReadyState m_readyState; | 92 MediaStreamSource::ReadyState m_readyState; |
92 | 93 |
93 // MediaStreamSourceObserver | 94 // MediaStreamSourceObserver |
94 virtual void sourceChangedState() OVERRIDE; | 95 virtual void sourceChangedState() OVERRIDE; |
95 | 96 |
96 void propagateTrackEnded(); | 97 void propagateTrackEnded(); |
97 WillBeHeapHashSet<RawPtrWillBeMember<MediaStream> > m_registeredMediaStreams
; | 98 WillBeHeapHashSet<RawPtrWillBeMember<MediaStream> > m_registeredMediaStreams
; |
98 bool m_isIteratingRegisteredMediaStreams; | 99 bool m_isIteratingRegisteredMediaStreams; |
99 | 100 |
100 bool m_stopped; | 101 bool m_stopped; |
101 RefPtr<MediaStreamComponent> m_component; | 102 RefPtr<MediaStreamComponent> m_component; |
102 }; | 103 }; |
103 | 104 |
104 typedef WillBeHeapVector<RefPtrWillBeMember<MediaStreamTrack> > MediaStreamTrack
Vector; | 105 typedef WillBeHeapVector<RefPtrWillBeMember<MediaStreamTrack> > MediaStreamTrack
Vector; |
105 | 106 |
106 } // namespace WebCore | 107 } // namespace WebCore |
107 | 108 |
108 #endif // MediaStreamTrack_h | 109 #endif // MediaStreamTrack_h |
OLD | NEW |