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 CHROMECAST_MEDIA_CMA_PIPELINE_AV_PIPELINE_CLIENT_H_ | 5 #ifndef CHROMECAST_MEDIA_CMA_PIPELINE_AV_PIPELINE_CLIENT_H_ |
6 #define CHROMECAST_MEDIA_CMA_PIPELINE_AV_PIPELINE_CLIENT_H_ | 6 #define CHROMECAST_MEDIA_CMA_PIPELINE_AV_PIPELINE_CLIENT_H_ |
7 | 7 |
8 #include "base/callback.h" | 8 #include "base/callback.h" |
9 #include "base/time/time.h" | 9 #include "base/time/time.h" |
10 #include "media/base/pipeline_status.h" | 10 #include "media/base/pipeline_status.h" |
11 | 11 |
12 namespace chromecast { | 12 namespace chromecast { |
13 namespace media { | 13 namespace media { |
14 | 14 |
15 struct AvPipelineClient { | 15 struct RendererAvPipelineClient { |
16 typedef base::Callback<void( | 16 typedef base::Callback<void( |
17 base::TimeDelta, base::TimeDelta, base::TimeTicks)> TimeUpdateCB; | 17 base::TimeDelta, base::TimeDelta, base::TimeTicks)> TimeUpdateCB; |
18 | 18 |
19 AvPipelineClient(); | 19 RendererAvPipelineClient(); |
20 ~AvPipelineClient(); | 20 ~RendererAvPipelineClient(); |
21 | 21 |
22 // End of stream notification. | 22 // End of stream notification. |
23 base::Closure eos_cb; | 23 base::Closure eos_cb; |
| 24 |
| 25 // Asynchronous playback error notification. |
| 26 ::media::PipelineStatusCB playback_error_cb; |
| 27 |
| 28 // Callback used to report the playback statistics. |
| 29 ::media::StatisticsCB statistics_cb; |
| 30 }; |
| 31 |
| 32 struct BrowserAvPipelineClient { |
| 33 typedef base::Callback< |
| 34 void(base::TimeDelta, base::TimeDelta, base::TimeTicks)> TimeUpdateCB; |
| 35 |
| 36 BrowserAvPipelineClient(); |
| 37 ~BrowserAvPipelineClient(); |
| 38 |
| 39 // End of stream notification. |
| 40 base::Closure eos_cb; |
24 | 41 |
25 // Asynchronous playback error notification. | 42 // Asynchronous playback error notification. |
26 ::media::PipelineStatusCB playback_error_cb; | 43 ::media::PipelineStatusCB playback_error_cb; |
27 | 44 |
28 // Callback used to report the playback statistics. | 45 // Callback used to report the playback statistics. |
29 ::media::StatisticsCB statistics_cb; | 46 ::media::StatisticsCB statistics_cb; |
30 }; | 47 }; |
31 | 48 |
32 } // namespace media | 49 } // namespace media |
33 } // namespace chromecast | 50 } // namespace chromecast |
34 | 51 |
35 #endif // CHROMECAST_MEDIA_CMA_PIPELINE_AV_PIPELINE_CLIENT_H_ | 52 #endif // CHROMECAST_MEDIA_CMA_PIPELINE_AV_PIPELINE_CLIENT_H_ |
OLD | NEW |