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.h42
1 files changed, 22 insertions, 20 deletions
diff --git a/media/base/pipeline_impl.h b/media/base/pipeline_impl.h
index 941b5e6..7c920e9 100644
--- a/media/base/pipeline_impl.h
+++ b/media/base/pipeline_impl.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
+// Copyright (c) 2006-2009 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.
@@ -7,7 +7,8 @@
#ifndef MEDIA_BASE_PIPELINE_IMPL_H_
#define MEDIA_BASE_PIPELINE_IMPL_H_
-#include "base/scoped_ptr.h"
+#include <string>
+
#include "media/base/pipeline.h"
namespace media {
@@ -15,29 +16,30 @@ namespace media {
class PipelineImpl : public Pipeline {
public:
PipelineImpl();
+ ~PipelineImpl();
- // Pipeline implementation.
- virtual bool Initialize(FilterFactoryInterface* filter_factory,
- const std::string& uri);
- virtual bool Play();
- virtual bool Pause();
- virtual bool Seek(int64 seek_position);
- virtual void Shutdown();
- virtual int64 GetTime() const;
+ // Implementation of PipelineStatus methods.
+ virtual bool IsInitialized() const;
virtual int64 GetDuration() const;
- virtual void SetStateChangedCallback(
- Callback1<PipelineState>::Type* callback);
- virtual void SetTimeChangedCallback(Callback1<int64>::Type* callback);
+ virtual int64 GetBufferedTime() const;
+ virtual int64 GetTotalBytes() const;
+ virtual int64 GetBufferedBytes()const;
+ virtual void GetVideoSize(size_t* width_out, size_t* height_out) const;
+ virtual float GetVolume() const;
+ virtual float GetPlaybackRate() const;
+ virtual int64 GetTime() const;
+ virtual PipelineError GetError() const;
- protected:
- virtual ~PipelineImpl();
+ // Impementation of Pipeline methods.
+ virtual bool Start(FilterFactory* filter_factory,
+ const std::string& uri,
+ Callback1<bool>::Type* init_complete_callback);
+ virtual void Stop();
+ virtual bool SetPlaybackRate(float rate);
+ virtual bool Seek(int64 time);
+ virtual bool SetVolume(float volume);
private:
- int64 time_;
- int64 duration_;
- scoped_ptr<Callback1<PipelineState>::Type> state_changed_callback_;
- scoped_ptr<Callback1<int64>::Type> time_changed_callback_;
-
DISALLOW_COPY_AND_ASSIGN(PipelineImpl);
};