| Index: chromecast/media/base/video_plane_controller.h
|
| diff --git a/chromecast/media/base/video_plane_controller.h b/chromecast/media/base/video_plane_controller.h
|
| index 302c8fa4341c2f6a202244b34c5b203bdce4269f..98e79e0fb2d7221a4f01a9503febcbf1777ecd67 100644
|
| --- a/chromecast/media/base/video_plane_controller.h
|
| +++ b/chromecast/media/base/video_plane_controller.h
|
| @@ -58,6 +58,21 @@ class VideoPlaneController {
|
| // no-op.
|
| void SetGraphicsPlaneResolution(const Size& resolution);
|
|
|
| + // After Pause is called, no further calls to VideoPlane::SetGeometry will be
|
| + // made except for any pending calls already scheduled on the media thread.
|
| + // The Set methods will however updated cached parameters that will take
|
| + // effect once the class is resumed. Safe to call multiple times.
|
| + void Pause();
|
| + // Makes class active again. Safe to call multiple times.
|
| + void Resume();
|
| + bool is_paused() const { return is_paused_; }
|
| +
|
| + // Clears any cached geometry parameters or state so that next call to
|
| + // SetGeometry is guaranteed to trigger VideoPlane::SetGeometry (assuming
|
| + // resolutions have been set and class is active). Can be called in paused
|
| + // state.
|
| + void ClearGeometryState();
|
| +
|
| private:
|
| class RateLimitedSetVideoPlaneGeometry;
|
| friend struct base::DefaultSingletonTraits<VideoPlaneController>;
|
| @@ -73,6 +88,8 @@ class VideoPlaneController {
|
| // VideoPlane::SetGeometry.
|
| bool HaveDataForSetGeometry() const;
|
|
|
| + bool is_paused_;
|
| +
|
| // Current resolutions
|
| bool have_output_res_;
|
| bool have_graphics_res_;
|
|
|