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

Unified Diff: media/base/filters.h

Issue 10796074: Move VideoRenderer out of Filter heirarchy. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src
Patch Set: Created 8 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 side-by-side diff with in-line comments
Download patch
Index: media/base/filters.h
diff --git a/media/base/filters.h b/media/base/filters.h
deleted file mode 100644
index 9cec12afacbb5e46d9ffd422a7aa33fdcfce2a69..0000000000000000000000000000000000000000
--- a/media/base/filters.h
+++ /dev/null
@@ -1,80 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
Ami GONE FROM CHROMIUM 2012/07/21 05:02:35 \o/!!!
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Filters are connected in a strongly typed manner, with downstream filters
-// always reading data from upstream filters. Upstream filters have no clue
-// who is actually reading from them, and return the results via callbacks.
-//
-// DemuxerStream(Video) <- VideoDecoder <- VideoRenderer
-// DataSource <- Demuxer <
-// DemuxerStream(Audio) <- AudioDecoder <- AudioRenderer
-//
-// Upstream -------------------------------------------------------> Downstream
-// <- Reads flow this way
-// Buffer assignments flow this way ->
-//
-// Every filter maintains a reference to the scheduler, who maintains data
-// shared between filters (i.e., reference clock value, playback state). The
-// scheduler is also responsible for scheduling filter tasks (i.e., a read on
-// a VideoDecoder would result in scheduling a Decode task). Filters can also
-// use the scheduler to signal errors and shutdown playback.
-
-#ifndef MEDIA_BASE_FILTERS_H_
-#define MEDIA_BASE_FILTERS_H_
-
-#include "base/callback.h"
-#include "base/memory/ref_counted.h"
-#include "base/time.h"
-#include "media/base/media_export.h"
-#include "media/base/pipeline_status.h"
-
-namespace media {
-
-class FilterHost;
-
-class MEDIA_EXPORT Filter : public base::RefCountedThreadSafe<Filter> {
- public:
- Filter();
-
- // Sets the host that owns this filter. The host holds a strong
- // reference to the filter. The reference held by the host is guaranteed
- // to be released before the host object is destroyed by the pipeline.
- virtual void SetHost(FilterHost* host) = 0;
-
- // The pipeline has resumed playback. Filters can continue requesting reads.
- // Filters may implement this method if they need to respond to this call.
- virtual void Play(const base::Closure& callback) = 0;
-
- // The pipeline has paused playback. Filters should stop buffer exchange.
- // Filters may implement this method if they need to respond to this call.
- virtual void Pause(const base::Closure& callback) = 0;
-
- // The pipeline has been flushed. Filters should return buffer to owners.
- // Filters may implement this method if they need to respond to this call.
- virtual void Flush(const base::Closure& callback) = 0;
-
- // The pipeline is being stopped either as a result of an error or because
- // the client called Stop().
- virtual void Stop(const base::Closure& callback) = 0;
-
- // The pipeline playback rate has been changed. Filters may implement this
- // method if they need to respond to this call.
- virtual void SetPlaybackRate(float playback_rate) = 0;
-
- // Carry out any actions required to seek to the given time, executing the
- // callback upon completion.
- virtual void Seek(base::TimeDelta time, const PipelineStatusCB& callback) = 0;
-
- protected:
- // Only allow scoped_refptr<> to delete filters.
- friend class base::RefCountedThreadSafe<Filter>;
- virtual ~Filter();
-
- private:
- DISALLOW_COPY_AND_ASSIGN(Filter);
-};
-
-} // namespace media
-
-#endif // MEDIA_BASE_FILTERS_H_

Powered by Google App Engine
This is Rietveld 408576698