summaryrefslogtreecommitdiffstats
path: root/media/base/pipeline_impl.h
diff options
context:
space:
mode:
Diffstat (limited to 'media/base/pipeline_impl.h')
-rw-r--r--media/base/pipeline_impl.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/media/base/pipeline_impl.h b/media/base/pipeline_impl.h
index 4eed436..be3ad28 100644
--- a/media/base/pipeline_impl.h
+++ b/media/base/pipeline_impl.h
@@ -7,9 +7,10 @@
#ifndef MEDIA_BASE_PIPELINE_IMPL_H_
#define MEDIA_BASE_PIPELINE_IMPL_H_
+#include <map>
+#include <set>
#include <string>
#include <vector>
-#include <set>
#include "base/message_loop.h"
#include "base/ref_counted.h"
@@ -82,6 +83,11 @@ class PipelineImpl : public Pipeline, public FilterHost {
virtual void GetVideoSize(size_t* width_out, size_t* height_out) const;
virtual PipelineError GetError() const;
+ // |error_callback_| will be executed upon an error in the pipeline. If
+ // |error_callback_| is NULL, it is ignored. The pipeline takes ownernship
+ // of |error_callback|.
+ virtual void SetPipelineErrorCallback(PipelineCallback* error_callback);
+
private:
// Pipeline states, as described above.
enum State {
@@ -314,6 +320,7 @@ class PipelineImpl : public Pipeline, public FilterHost {
// Callbacks for various pipeline operations.
scoped_ptr<PipelineCallback> seek_callback_;
scoped_ptr<PipelineCallback> stop_callback_;
+ scoped_ptr<PipelineCallback> error_callback_;
// Vector of our filters and map maintaining the relationship between the
// FilterType and the filter itself.