summaryrefslogtreecommitdiffstats
path: root/media/base/pipeline.h
diff options
context:
space:
mode:
authorscherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-09 05:40:30 +0000
committerscherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-09 05:40:30 +0000
commita3702c5edd8e4cf690d500fc4194235d7235c838 (patch)
tree8f4b527af1517ca9c051c2a9d49ad99a2912207c /media/base/pipeline.h
parentf7446af2e4a7f9de73fde8eb36a022c937d12077 (diff)
downloadchromium_src-a3702c5edd8e4cf690d500fc4194235d7235c838.zip
chromium_src-a3702c5edd8e4cf690d500fc4194235d7235c838.tar.gz
chromium_src-a3702c5edd8e4cf690d500fc4194235d7235c838.tar.bz2
Reland: Remove reference counting from media::Pipeline.
Now with a test that covers the refresh/teardown case. BUG=173313 Review URL: https://chromiumcodereview.appspot.com/14779009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@199130 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/pipeline.h')
-rw-r--r--media/base/pipeline.h9
1 files changed, 2 insertions, 7 deletions
diff --git a/media/base/pipeline.h b/media/base/pipeline.h
index aa92269..a91176e 100644
--- a/media/base/pipeline.h
+++ b/media/base/pipeline.h
@@ -63,9 +63,7 @@ class VideoRenderer;
// If any error ever happens, this object will transition to the "Error" state
// from any state. If Stop() is ever called, this object will transition to
// "Stopped" state.
-class MEDIA_EXPORT Pipeline
- : public base::RefCountedThreadSafe<Pipeline>,
- public DemuxerHost {
+class MEDIA_EXPORT Pipeline : public DemuxerHost {
public:
// Buffering states the pipeline transitions between during playback.
// kHaveMetadata:
@@ -85,6 +83,7 @@ class MEDIA_EXPORT Pipeline
// Constructs a media pipeline that will execute on |message_loop|.
Pipeline(const scoped_refptr<base::MessageLoopProxy>& message_loop,
MediaLog* media_log);
+ virtual ~Pipeline();
// Build a pipeline to using the given filter collection to construct a filter
// chain, executing |seek_cb| when the initial seek/preroll has completed.
@@ -198,10 +197,6 @@ class MEDIA_EXPORT Pipeline
FRIEND_TEST_ALL_PREFIXES(PipelineTest, AudioStreamShorterThanVideo);
friend class MediaLog;
- // Only allow ourselves to be deleted by reference counting.
- friend class base::RefCountedThreadSafe<Pipeline>;
- virtual ~Pipeline();
-
// Pipeline states, as described above.
enum State {
kCreated,