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

Side by Side Diff: Source/modules/mediasource/MediaSource.h

Issue 360323002: MediaSource must use ref-counting to handle pending activity counting. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Revert HTMLMediaElement changes Created 6 years, 5 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 unified diff | Download patch
« no previous file with comments | « no previous file | Source/modules/mediasource/MediaSource.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * 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 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 44
45 namespace blink { 45 namespace blink {
46 class WebSourceBuffer; 46 class WebSourceBuffer;
47 } 47 }
48 48
49 namespace WebCore { 49 namespace WebCore {
50 50
51 class ExceptionState; 51 class ExceptionState;
52 class GenericEventQueue; 52 class GenericEventQueue;
53 53
54 // FIXME: Oilpan: Change this to RefCountedGarbageCollectedWillBeGarbageCollecte dFinalized
55 // if MediaSource stops using ActiveDOMObject::setPendingActivity.
54 class MediaSource FINAL 56 class MediaSource FINAL
55 : public RefCountedGarbageCollectedWillBeGarbageCollectedFinalized<MediaSour ce> 57 : public RefCountedGarbageCollected<MediaSource>
56 , public HTMLMediaSource 58 , public HTMLMediaSource
57 , public ActiveDOMObject 59 , public ActiveDOMObject
58 , public EventTargetWithInlineData 60 , public EventTargetWithInlineData
59 , public ScriptWrappable { 61 , public ScriptWrappable {
60 DEFINE_EVENT_TARGET_REFCOUNTING_WILL_BE_REMOVED(RefCountedGarbageCollected<M ediaSource>); 62 DEFINE_EVENT_TARGET_REFCOUNTING(RefCountedGarbageCollected<MediaSource>);
61 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(MediaSource); 63 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(MediaSource);
62 public: 64 public:
63 static const AtomicString& openKeyword(); 65 static const AtomicString& openKeyword();
64 static const AtomicString& closedKeyword(); 66 static const AtomicString& closedKeyword();
65 static const AtomicString& endedKeyword(); 67 static const AtomicString& endedKeyword();
66 68
67 static MediaSource* create(ExecutionContext*); 69 static MediaSource* create(ExecutionContext*);
68 virtual ~MediaSource(); 70 virtual ~MediaSource();
69 71
70 // MediaSource.idl methods 72 // MediaSource.idl methods
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 void endOfStreamInternal(const blink::WebMediaSource::EndOfStreamStatus, Exc eptionState&); 124 void endOfStreamInternal(const blink::WebMediaSource::EndOfStreamStatus, Exc eptionState&);
123 125
124 // Implements the duration change algorithm. 126 // Implements the duration change algorithm.
125 // https://dvcs.w3.org/hg/html-media/raw-file/default/media-source/media-sou rce.html#duration-change-algorithm 127 // https://dvcs.w3.org/hg/html-media/raw-file/default/media-source/media-sou rce.html#duration-change-algorithm
126 void durationChangeAlgorithm(double newDuration); 128 void durationChangeAlgorithm(double newDuration);
127 129
128 OwnPtr<blink::WebMediaSource> m_webMediaSource; 130 OwnPtr<blink::WebMediaSource> m_webMediaSource;
129 AtomicString m_readyState; 131 AtomicString m_readyState;
130 OwnPtrWillBeMember<GenericEventQueue> m_asyncEventQueue; 132 OwnPtrWillBeMember<GenericEventQueue> m_asyncEventQueue;
131 // FIXME: oilpan: This should become a Member. For now, m_attachedElement wi ll be cleared by the HTMLMediaElement destructor. 133 // FIXME: oilpan: This should become a Member. For now, m_attachedElement wi ll be cleared by the HTMLMediaElement destructor.
132 HTMLMediaElement* m_attachedElement; 134 HTMLMediaElement* m_attachedElement;
haraken 2014/07/01 16:20:59 You might want to address this FIXME when you make
sof 2014/07/01 16:22:41 I'm just green'ing the tree, for now.
133 135
134 Member<SourceBufferList> m_sourceBuffers; 136 Member<SourceBufferList> m_sourceBuffers;
135 Member<SourceBufferList> m_activeSourceBuffers; 137 Member<SourceBufferList> m_activeSourceBuffers;
136 }; 138 };
137 139
138 } // namespace WebCore 140 } // namespace WebCore
139 141
140 #endif 142 #endif
OLDNEW
« no previous file with comments | « no previous file | Source/modules/mediasource/MediaSource.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698