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

Side by Side Diff: media/base/filter_host.h

Issue 155469: Splitting media filter's Initialize() into Create() + callback and Seek() + callback. (Closed)
Patch Set: Fixed valgrind errors Created 11 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 unified diff | Download patch
« no previous file with comments | « no previous file | media/base/filter_host_impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2008-2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2008-2009 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // FilterHost describes an interface for individual filters to access and 5 // FilterHost describes an interface for individual filters to access and
6 // modify global playback information. Every filter is given a filter host 6 // modify global playback information. Every filter is given a filter host
7 // reference as part of initialization. 7 // reference as part of initialization.
8 // 8 //
9 // This interface is intentionally verbose to cover the needs for the different 9 // This interface is intentionally verbose to cover the needs for the different
10 // types of filters (see media/base/filters.h for filter definitionss). Filters 10 // types of filters (see media/base/filters.h for filter definitionss). Filters
11 // typically use parts of the interface that are relevant to their function. 11 // typically use parts of the interface that are relevant to their function.
12 // For example, an audio renderer filter typically calls SetTime as it feeds 12 // For example, an audio renderer filter typically calls SetTime as it feeds
13 // data to the audio hardware. A video renderer filter typically calls GetTime 13 // data to the audio hardware. A video renderer filter typically calls GetTime
14 // to synchronize video with audio. An audio and video decoder would typically 14 // to synchronize video with audio. An audio and video decoder would typically
15 // have no need to call either SetTime or GetTime. 15 // have no need to call either SetTime or GetTime.
16 16
17 #ifndef MEDIA_BASE_FILTER_HOST_H_ 17 #ifndef MEDIA_BASE_FILTER_HOST_H_
18 #define MEDIA_BASE_FILTER_HOST_H_ 18 #define MEDIA_BASE_FILTER_HOST_H_
19 19
20 #include "base/task.h" 20 #include "base/task.h"
21 #include "media/base/pipeline.h" 21 #include "media/base/pipeline.h"
22 22
23 namespace media { 23 namespace media {
24 24
25 class FilterHost { 25 class FilterHost {
26 public: 26 public:
27 // Filters must call this method to indicate that their initialization is
28 // complete. They may call this from within their Initialize() method or may
29 // choose call it after processing some data.
30 virtual void InitializationComplete() = 0;
31
32 // Stops execution of the pipeline due to a fatal error. Do not call this 27 // Stops execution of the pipeline due to a fatal error. Do not call this
33 // method with PIPELINE_OK or PIPELINE_STOPPING (used internally by pipeline). 28 // method with PIPELINE_OK or PIPELINE_STOPPING (used internally by pipeline).
34 virtual void Error(PipelineError error) = 0; 29 virtual void Error(PipelineError error) = 0;
35 30
36 // Gets the current time in microseconds. 31 // Gets the current time in microseconds.
37 virtual base::TimeDelta GetTime() const = 0; 32 virtual base::TimeDelta GetTime() const = 0;
38 33
39 // Updates the current time. Other filters should poll to examine the updated 34 // Updates the current time. Other filters should poll to examine the updated
40 // time. 35 // time.
41 virtual void SetTime(base::TimeDelta time) = 0; 36 virtual void SetTime(base::TimeDelta time) = 0;
(...skipping 16 matching lines...) Expand all
58 // Sets the size of the video output in pixel units. 53 // Sets the size of the video output in pixel units.
59 virtual void SetVideoSize(size_t width, size_t height) = 0; 54 virtual void SetVideoSize(size_t width, size_t height) = 0;
60 55
61 protected: 56 protected:
62 virtual ~FilterHost() {} 57 virtual ~FilterHost() {}
63 }; 58 };
64 59
65 } // namespace media 60 } // namespace media
66 61
67 #endif // MEDIA_BASE_FILTER_HOST_H_ 62 #endif // MEDIA_BASE_FILTER_HOST_H_
OLDNEW
« no previous file with comments | « no previous file | media/base/filter_host_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698