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

Unified Diff: chromecast/media/base/video_plane_controller.h

Issue 1531543002: [Chromecast] Adding pause/resume operations to VideoPlaneController. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Just modified a comment back the way it was. Created 5 years 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 side-by-side diff with in-line comments
Download patch
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..02bcbc8ba3da3beacd4a4f1c3782c62509574329 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
byungchul 2015/12/18 00:28:28 s/updated/update
esum 2015/12/21 00:39:21 Done.
+ // 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;
+
+ // 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_;

Powered by Google App Engine
This is Rietveld 408576698