OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef MEDIA_RENDERERS_RENDERER_IMPL_H_ | 5 #ifndef MEDIA_RENDERERS_RENDERER_IMPL_H_ |
6 #define MEDIA_RENDERERS_RENDERER_IMPL_H_ | 6 #define MEDIA_RENDERERS_RENDERER_IMPL_H_ |
7 | 7 |
8 #include "base/memory/ref_counted.h" | 8 #include "base/memory/ref_counted.h" |
9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
10 #include "base/memory/weak_ptr.h" | 10 #include "base/memory/weak_ptr.h" |
(...skipping 29 matching lines...) Expand all Loading... |
40 scoped_ptr<AudioRenderer> audio_renderer, | 40 scoped_ptr<AudioRenderer> audio_renderer, |
41 scoped_ptr<VideoRenderer> video_renderer); | 41 scoped_ptr<VideoRenderer> video_renderer); |
42 | 42 |
43 ~RendererImpl() final; | 43 ~RendererImpl() final; |
44 | 44 |
45 // Renderer implementation. | 45 // Renderer implementation. |
46 void Initialize(DemuxerStreamProvider* demuxer_stream_provider, | 46 void Initialize(DemuxerStreamProvider* demuxer_stream_provider, |
47 const PipelineStatusCB& init_cb, | 47 const PipelineStatusCB& init_cb, |
48 const StatisticsCB& statistics_cb, | 48 const StatisticsCB& statistics_cb, |
49 const BufferingStateCB& buffering_state_cb, | 49 const BufferingStateCB& buffering_state_cb, |
50 const PaintCB& paint_cb, | |
51 const base::Closure& ended_cb, | 50 const base::Closure& ended_cb, |
52 const PipelineStatusCB& error_cb, | 51 const PipelineStatusCB& error_cb, |
53 const base::Closure& waiting_for_decryption_key_cb) final; | 52 const base::Closure& waiting_for_decryption_key_cb) final; |
54 void SetCdm(CdmContext* cdm_context, | 53 void SetCdm(CdmContext* cdm_context, |
55 const CdmAttachedCB& cdm_attached_cb) final; | 54 const CdmAttachedCB& cdm_attached_cb) final; |
56 void Flush(const base::Closure& flush_cb) final; | 55 void Flush(const base::Closure& flush_cb) final; |
57 void StartPlayingFrom(base::TimeDelta time) final; | 56 void StartPlayingFrom(base::TimeDelta time) final; |
58 void SetPlaybackRate(float playback_rate) final; | 57 void SetPlaybackRate(float playback_rate) final; |
59 void SetVolume(float volume) final; | 58 void SetVolume(float volume) final; |
60 base::TimeDelta GetMediaTime() final; | 59 base::TimeDelta GetMediaTime() final; |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 // Task runner used to execute pipeline tasks. | 125 // Task runner used to execute pipeline tasks. |
127 scoped_refptr<base::SingleThreadTaskRunner> task_runner_; | 126 scoped_refptr<base::SingleThreadTaskRunner> task_runner_; |
128 | 127 |
129 DemuxerStreamProvider* demuxer_stream_provider_; | 128 DemuxerStreamProvider* demuxer_stream_provider_; |
130 | 129 |
131 // Permanent callbacks to notify various renderer states/stats. | 130 // Permanent callbacks to notify various renderer states/stats. |
132 StatisticsCB statistics_cb_; | 131 StatisticsCB statistics_cb_; |
133 base::Closure ended_cb_; | 132 base::Closure ended_cb_; |
134 PipelineStatusCB error_cb_; | 133 PipelineStatusCB error_cb_; |
135 BufferingStateCB buffering_state_cb_; | 134 BufferingStateCB buffering_state_cb_; |
136 PaintCB paint_cb_; | |
137 base::Closure waiting_for_decryption_key_cb_; | 135 base::Closure waiting_for_decryption_key_cb_; |
138 | 136 |
139 // Temporary callback used for Initialize() and Flush(). | 137 // Temporary callback used for Initialize() and Flush(). |
140 PipelineStatusCB init_cb_; | 138 PipelineStatusCB init_cb_; |
141 base::Closure flush_cb_; | 139 base::Closure flush_cb_; |
142 | 140 |
143 scoped_ptr<AudioRenderer> audio_renderer_; | 141 scoped_ptr<AudioRenderer> audio_renderer_; |
144 scoped_ptr<VideoRenderer> video_renderer_; | 142 scoped_ptr<VideoRenderer> video_renderer_; |
145 | 143 |
146 // Renderer-provided time source used to control playback. | 144 // Renderer-provided time source used to control playback. |
(...skipping 26 matching lines...) Expand all Loading... |
173 | 171 |
174 base::WeakPtr<RendererImpl> weak_this_; | 172 base::WeakPtr<RendererImpl> weak_this_; |
175 base::WeakPtrFactory<RendererImpl> weak_factory_; | 173 base::WeakPtrFactory<RendererImpl> weak_factory_; |
176 | 174 |
177 DISALLOW_COPY_AND_ASSIGN(RendererImpl); | 175 DISALLOW_COPY_AND_ASSIGN(RendererImpl); |
178 }; | 176 }; |
179 | 177 |
180 } // namespace media | 178 } // namespace media |
181 | 179 |
182 #endif // MEDIA_RENDERERS_RENDERER_IMPL_H_ | 180 #endif // MEDIA_RENDERERS_RENDERER_IMPL_H_ |
OLD | NEW |