OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef TrackListBase_h | 5 #ifndef TrackListBase_h |
6 #define TrackListBase_h | 6 #define TrackListBase_h |
7 | 7 |
8 #include "core/events/EventTarget.h" | 8 #include "core/events/EventTarget.h" |
9 | 9 |
10 #include "core/html/HTMLMediaElement.h" | 10 #include "core/html/HTMLMediaElement.h" |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 | 70 |
71 void add(PassRefPtrWillBeRawPtr<T> prpTrack) | 71 void add(PassRefPtrWillBeRawPtr<T> prpTrack) |
72 { | 72 { |
73 RefPtrWillBeRawPtr<T> track = prpTrack; | 73 RefPtrWillBeRawPtr<T> track = prpTrack; |
74 | 74 |
75 track->setMediaElement(m_mediaElement); | 75 track->setMediaElement(m_mediaElement); |
76 m_tracks.append(track); | 76 m_tracks.append(track); |
77 scheduleTrackEvent(EventTypeNames::addtrack, track.release()); | 77 scheduleTrackEvent(EventTypeNames::addtrack, track.release()); |
78 } | 78 } |
79 | 79 |
80 void remove(blink::WebMediaPlayer::TrackId trackId) | 80 void remove(WebMediaPlayer::TrackId trackId) |
81 { | 81 { |
82 for (unsigned i = 0; i < m_tracks.size(); ++i) { | 82 for (unsigned i = 0; i < m_tracks.size(); ++i) { |
83 if (m_tracks[i]->trackId() != trackId) | 83 if (m_tracks[i]->trackId() != trackId) |
84 continue; | 84 continue; |
85 | 85 |
86 m_tracks[i]->setMediaElement(0); | 86 m_tracks[i]->setMediaElement(0); |
87 scheduleTrackEvent(EventTypeNames::removetrack, m_tracks[i]); | 87 scheduleTrackEvent(EventTypeNames::removetrack, m_tracks[i]); |
88 m_tracks.remove(i); | 88 m_tracks.remove(i); |
89 return; | 89 return; |
90 } | 90 } |
(...skipping 29 matching lines...) Expand all Loading... |
120 { | 120 { |
121 RefPtrWillBeRawPtr<Event> event = TrackEvent::create(eventName, track); | 121 RefPtrWillBeRawPtr<Event> event = TrackEvent::create(eventName, track); |
122 event->setTarget(this); | 122 event->setTarget(this); |
123 m_mediaElement->scheduleEvent(event); | 123 m_mediaElement->scheduleEvent(event); |
124 } | 124 } |
125 | 125 |
126 WillBeHeapVector<RefPtrWillBeMember<T>> m_tracks; | 126 WillBeHeapVector<RefPtrWillBeMember<T>> m_tracks; |
127 RawPtrWillBeMember<HTMLMediaElement> m_mediaElement; | 127 RawPtrWillBeMember<HTMLMediaElement> m_mediaElement; |
128 }; | 128 }; |
129 | 129 |
130 } | 130 } // namespace blink |
131 | 131 |
132 #endif | 132 #endif |
OLD | NEW |