diff options
Diffstat (limited to 'chromium/cc/scheduler/delay_based_time_source.h')
-rw-r--r-- | chromium/cc/scheduler/delay_based_time_source.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/chromium/cc/scheduler/delay_based_time_source.h b/chromium/cc/scheduler/delay_based_time_source.h index 55aac5a97fb..1dc4d6fff11 100644 --- a/chromium/cc/scheduler/delay_based_time_source.h +++ b/chromium/cc/scheduler/delay_based_time_source.h @@ -27,7 +27,7 @@ class CC_EXPORT DelayBasedTimeSource : public TimeSource { virtual void SetTimebaseAndInterval(base::TimeTicks timebase, base::TimeDelta interval) OVERRIDE; - virtual base::TimeTicks SetActive(bool active) OVERRIDE; + virtual void SetActive(bool active) OVERRIDE; virtual bool Active() const OVERRIDE; // Get the last and next tick times. nextTimeTime() returns null when @@ -47,6 +47,12 @@ class CC_EXPORT DelayBasedTimeSource : public TimeSource { void PostNextTickTask(base::TimeTicks now); void OnTimerFired(); + enum State { + STATE_INACTIVE, + STATE_STARTING, + STATE_ACTIVE, + }; + struct Parameters { Parameters(base::TimeDelta interval, base::TimeTicks tick_target) : interval(interval), tick_target(tick_target) {} @@ -55,6 +61,7 @@ class CC_EXPORT DelayBasedTimeSource : public TimeSource { }; TimeSourceClient* client_; + bool has_tick_target_; base::TimeTicks last_tick_time_; // current_parameters_ should only be written by PostNextTickTask. @@ -64,7 +71,7 @@ class CC_EXPORT DelayBasedTimeSource : public TimeSource { Parameters current_parameters_; Parameters next_parameters_; - bool active_; + State state_; base::SingleThreadTaskRunner* task_runner_; base::WeakPtrFactory<DelayBasedTimeSource> weak_factory_; |