diff options
author | erg@google.com <erg@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-23 22:43:53 +0000 |
---|---|---|
committer | erg@google.com <erg@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-23 22:43:53 +0000 |
commit | dec76e804867ced17b032571f440adf4945c4d99 (patch) | |
tree | fd798a848d7967b28d89350a55f48285057e2739 /media | |
parent | 0695ef4d095a441148ae80a08576c25c2ab8bc40 (diff) | |
download | chromium_src-dec76e804867ced17b032571f440adf4945c4d99.zip chromium_src-dec76e804867ced17b032571f440adf4945c4d99.tar.gz chromium_src-dec76e804867ced17b032571f440adf4945c4d99.tar.bz2 |
FBTF: Move virtual methods to implementation files.
Remove logging.h and other headers where possible.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3461019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60369 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media')
-rw-r--r-- | media/base/factory.h | 1 | ||||
-rw-r--r-- | media/base/filters.cc | 80 | ||||
-rw-r--r-- | media/base/filters.h | 72 | ||||
-rw-r--r-- | media/filters/ffmpeg_demuxer.cc | 1 | ||||
-rw-r--r-- | media/media.gyp | 1 | ||||
-rw-r--r-- | media/tools/player_x11/x11_video_renderer.cc | 1 |
6 files changed, 99 insertions, 57 deletions
diff --git a/media/base/factory.h b/media/base/factory.h index 49bd868..b9e637d 100644 --- a/media/base/factory.h +++ b/media/base/factory.h @@ -32,6 +32,7 @@ #include <vector> +#include "base/logging.h" #include "base/ref_counted.h" #include "media/base/filters.h" diff --git a/media/base/filters.cc b/media/base/filters.cc new file mode 100644 index 0000000..0a428b9 --- /dev/null +++ b/media/base/filters.cc @@ -0,0 +1,80 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "media/base/filters.h" + +#include "base/logging.h" +#include "base/message_loop.h" + +namespace media { + +MediaFilter::MediaFilter() : host_(NULL), message_loop_(NULL) {} + +void MediaFilter::set_host(FilterHost* host) { + DCHECK(host); + DCHECK(!host_); + host_ = host; +} + +FilterHost* MediaFilter::host() { + return host_; +} + +void MediaFilter::set_message_loop(MessageLoop* message_loop) { + DCHECK(message_loop); + DCHECK(!message_loop_); + message_loop_ = message_loop; +} + +MessageLoop* MediaFilter::message_loop() { + return message_loop_; +} + +void MediaFilter::Play(FilterCallback* callback) { + DCHECK(callback); + if (callback) { + callback->Run(); + delete callback; + } +} + +void MediaFilter::Pause(FilterCallback* callback) { + DCHECK(callback); + if (callback) { + callback->Run(); + delete callback; + } +} + +void MediaFilter::Flush(FilterCallback* callback) { + DCHECK(callback); + if (callback) { + callback->Run(); + delete callback; + } +} + +void MediaFilter::Stop(FilterCallback* callback) { + DCHECK(callback); + if (callback) { + callback->Run(); + delete callback; + } +} + +void MediaFilter::SetPlaybackRate(float playback_rate) {} + +void MediaFilter::Seek(base::TimeDelta time, FilterCallback* callback) { + scoped_ptr<FilterCallback> seek_callback(callback); + if (seek_callback.get()) { + seek_callback->Run(); + } +} + +void MediaFilter::OnAudioRendererDisabled() { +} + +MediaFilter::~MediaFilter() {} + +} // namespace media diff --git a/media/base/filters.h b/media/base/filters.h index 0fdf6cf..30e86a6 100644 --- a/media/base/filters.h +++ b/media/base/filters.h @@ -27,14 +27,14 @@ #include <string> #include "base/callback.h" -#include "base/logging.h" -#include "base/message_loop.h" #include "base/ref_counted.h" #include "base/time.h" #include "base/scoped_ptr.h" #include "media/base/media_format.h" #include "media/base/video_frame.h" +class MessageLoop; + namespace media { class Buffer; @@ -60,103 +60,61 @@ typedef Callback0::Type FilterCallback; class MediaFilter : public base::RefCountedThreadSafe<MediaFilter> { public: - MediaFilter() : host_(NULL), message_loop_(NULL) {} + MediaFilter(); // Sets the private member |host_|. This is the first method called by // the FilterHost after a filter is created. 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 set_host(FilterHost* host) { - DCHECK(host); - DCHECK(!host_); - host_ = host; - } + virtual void set_host(FilterHost* host); - virtual FilterHost* host() { - return host_; - } + virtual FilterHost* host(); // Sets the private member |message_loop_|, which is used by filters for // processing asynchronous tasks and maintaining synchronized access to // internal data members. The message loop should be running and exceed the // lifetime of the filter. - virtual void set_message_loop(MessageLoop* message_loop) { - DCHECK(message_loop); - DCHECK(!message_loop_); - message_loop_ = message_loop; - } + virtual void set_message_loop(MessageLoop* message_loop); - virtual MessageLoop* message_loop() { - return message_loop_; - } + virtual MessageLoop* message_loop(); // The pipeline has resumed playback. Filters can continue requesting reads. // Filters may implement this method if they need to respond to this call. // TODO(boliu): Check that callback is not NULL in subclasses. - virtual void Play(FilterCallback* callback) { - DCHECK(callback); - if (callback) { - callback->Run(); - delete callback; - } - } + virtual void Play(FilterCallback* callback); // The pipeline has paused playback. Filters should stop buffer exchange. // Filters may implement this method if they need to respond to this call. // TODO(boliu): Check that callback is not NULL in subclasses. - virtual void Pause(FilterCallback* callback) { - DCHECK(callback); - if (callback) { - callback->Run(); - delete callback; - } - } + virtual void Pause(FilterCallback* callback); // The pipeline has been flushed. Filters should return buffer to owners. // Filters may implement this method if they need to respond to this call. // TODO(boliu): Check that callback is not NULL in subclasses. - virtual void Flush(FilterCallback* callback) { - DCHECK(callback); - if (callback) { - callback->Run(); - delete callback; - } - } + virtual void Flush(FilterCallback* callback); // The pipeline is being stopped either as a result of an error or because // the client called Stop(). // TODO(boliu): Check that callback is not NULL in subclasses. - virtual void Stop(FilterCallback* callback) { - DCHECK(callback); - if (callback) { - callback->Run(); - delete callback; - } - } + virtual void Stop(FilterCallback* callback); // 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) {} + virtual void SetPlaybackRate(float playback_rate); // Carry out any actions required to seek to the given time, executing the // callback upon completion. - virtual void Seek(base::TimeDelta time, FilterCallback* callback) { - scoped_ptr<FilterCallback> seek_callback(callback); - if (seek_callback.get()) { - seek_callback->Run(); - } - } + virtual void Seek(base::TimeDelta time, FilterCallback* callback); // This method is called from the pipeline when the audio renderer // is disabled. Filters can ignore the notification if they do not // need to react to this event. - virtual void OnAudioRendererDisabled() { - } + virtual void OnAudioRendererDisabled(); protected: // Only allow scoped_refptr<> to delete filters. friend class base::RefCountedThreadSafe<MediaFilter>; - virtual ~MediaFilter() {} + virtual ~MediaFilter(); FilterHost* host() const { return host_; } MessageLoop* message_loop() const { return message_loop_; } diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc index c871343..1752a4d 100644 --- a/media/filters/ffmpeg_demuxer.cc +++ b/media/filters/ffmpeg_demuxer.cc @@ -4,6 +4,7 @@ #include "base/callback.h" #include "base/command_line.h" +#include "base/message_loop.h" #include "base/scoped_ptr.h" #include "base/stl_util-inl.h" #include "base/string_util.h" diff --git a/media/media.gyp b/media/media.gyp index 21f0dc1..5685729 100644 --- a/media/media.gyp +++ b/media/media.gyp @@ -75,6 +75,7 @@ 'base/djb2.h', 'base/factory.h', 'base/filter_host.h', + 'base/filters.cc', 'base/filters.h', 'base/media.h', 'base/media_format.cc', diff --git a/media/tools/player_x11/x11_video_renderer.cc b/media/tools/player_x11/x11_video_renderer.cc index 707a578..6819468 100644 --- a/media/tools/player_x11/x11_video_renderer.cc +++ b/media/tools/player_x11/x11_video_renderer.cc @@ -9,6 +9,7 @@ #include <X11/extensions/Xrender.h> #include <X11/extensions/Xcomposite.h> +#include "base/message_loop.h" #include "media/base/video_frame.h" #include "media/base/yuv_convert.h" |