Index: cc/scheduler/scheduler.h |
diff --git a/cc/scheduler/scheduler.h b/cc/scheduler/scheduler.h |
index 34717a04acd7469c273319765d72666d7167ee8d..e90b6528f701e5e45626c33978f7fed6284b1798 100644 |
--- a/cc/scheduler/scheduler.h |
+++ b/cc/scheduler/scheduler.h |
@@ -46,6 +46,7 @@ class SchedulerClient { |
virtual base::TimeDelta BeginMainFrameToCommitDurationEstimate() = 0; |
virtual base::TimeDelta CommitToActivateDurationEstimate() = 0; |
virtual void DidBeginImplFrameDeadline() = 0; |
+ virtual void SendBeginFrameToChildren(const BeginFrameArgs& args) = 0; |
protected: |
virtual ~SchedulerClient() {} |
@@ -134,6 +135,11 @@ class CC_EXPORT Scheduler { |
state_machine_.SetContinuousPainting(continuous_painting); |
} |
+ // SetChildrenNeedBeginFrames() is only used when this Scheduler is acting |
+ // as the publisher. |
+ void SetChildrenNeedBeginFrames(bool need_begin_frame); |
+ void SetAuthoritativeVSyncInterval(base::TimeDelta interval); |
+ |
protected: |
class CC_EXPORT SyntheticBeginFrameSource : public TimeSourceClient { |
public: |
@@ -177,6 +183,9 @@ class CC_EXPORT Scheduler { |
scoped_refptr<base::SingleThreadTaskRunner> task_runner_; |
base::TimeDelta vsync_interval_; |
+ base::TimeDelta authoritative_vsync_interval_; |
+ base::TimeTicks last_timebase_; |
+ |
base::TimeDelta estimated_parent_draw_time_; |
bool last_set_needs_begin_frame_; |