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

Unified Diff: media/base/filter_host_impl.cc

Issue 18546: Implementation of Pipeline and FilterHost interfaces. This is a large change... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 11 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
« no previous file with comments | « media/base/filter_host_impl.h ('k') | media/base/filters.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/base/filter_host_impl.cc
===================================================================
--- media/base/filter_host_impl.cc (revision 8731)
+++ media/base/filter_host_impl.cc (working copy)
@@ -2,70 +2,70 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "base/task.h"
#include "media/base/filter_host_impl.h"
namespace media {
-FilterHostImpl::FilterHostImpl() {
- // TODO(ralphl): implement FilterHostImpl constructor.
- NOTIMPLEMENTED();
+void FilterHostImpl::SetTimeUpdateCallback(
+ Callback1<base::TimeDelta>::Type* callback) {
+ time_update_callback_.reset(callback);
}
-const PipelineStatus* FilterHostImpl::GetPipelineStatus() const {
- // TODO(ralphl): implement GetPipelineStatus.
- NOTIMPLEMENTED();
- return NULL;
+void FilterHostImpl::RunTimeUpdateCallback(base::TimeDelta time) {
+ if (time_update_callback_.get())
+ time_update_callback_->Run(time);
}
-void FilterHostImpl::SetTimeUpdateCallback(Callback1<int64>::Type* callback) {
- // TODO(ralphl): implement SetTimeUpdateCallback.
- NOTIMPLEMENTED();
+void FilterHostImpl::InitializationComplete() {
+ pipeline_thread_->InitializationComplete(this);
}
-void FilterHostImpl::InitializationComplete() {
- // TODO(ralphl): implement InitializationComplete.
- NOTIMPLEMENTED();
-}
-
void FilterHostImpl::PostTask(Task* task) {
- // TODO(ralphl): implement PostTask.
- NOTIMPLEMENTED();
+ DCHECK(!stopped_);
+ if (stopped_) {
+ delete task;
+ } else {
+ pipeline_thread_->PostTask(task);
+ }
}
void FilterHostImpl::Error(PipelineError error) {
- // TODO(ralphl): implement Error.
- NOTIMPLEMENTED();
+ pipeline_thread_->Error(error);
}
-void FilterHostImpl::SetTime(int64 time) {
- // TODO(ralphl): implement SetTime.
- NOTIMPLEMENTED();
+void FilterHostImpl::SetTime(base::TimeDelta time) {
+ pipeline_thread_->SetTime(time);
}
-void FilterHostImpl::SetDuration(int64 duration) {
- // TODO(ralphl): implement SetDuration.
- NOTIMPLEMENTED();
+void FilterHostImpl::SetDuration(base::TimeDelta duration) {
+ pipeline()->duration_ = duration;
}
-void FilterHostImpl::SetBufferedTime(int64 buffered_time) {
- // TODO(ralphl): implement SetBufferedTime.
- NOTIMPLEMENTED();
+void FilterHostImpl::SetBufferedTime(base::TimeDelta buffered_time) {
+ pipeline()->buffered_time_ = buffered_time;
}
void FilterHostImpl::SetTotalBytes(int64 total_bytes) {
- // TODO(ralphl): implement.
- NOTIMPLEMENTED();
+ pipeline()->total_bytes_ = total_bytes;
}
void FilterHostImpl::SetBufferedBytes(int64 buffered_bytes) {
- // TODO(ralphl): implement.
- NOTIMPLEMENTED();
+ pipeline()->buffered_bytes_ = buffered_bytes;
}
-void SetVideoSize(size_t width, size_t height) {
- // TODO(ralphl): implement.
- NOTIMPLEMENTED();
+void FilterHostImpl::SetVideoSize(size_t width, size_t height) {
+ pipeline()->SetVideoSize(width, height);
}
+const PipelineStatus* FilterHostImpl::GetPipelineStatus() const {
+ return pipeline();
+}
+
+void FilterHostImpl::Stop() {
+ if (!stopped_) {
+ filter_->Stop();
+ stopped_ = true;
+ }
+}
+
} // namespace media
« no previous file with comments | « media/base/filter_host_impl.h ('k') | media/base/filters.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698