Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 CC_SCHEDULER_SCHEDULER_H_ | 5 #ifndef CC_SCHEDULER_SCHEDULER_H_ |
| 6 #define CC_SCHEDULER_SCHEDULER_H_ | 6 #define CC_SCHEDULER_SCHEDULER_H_ |
| 7 | 7 |
| 8 #include <deque> | 8 #include <deque> |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 118 bool PrepareTilesPending() const { | 118 bool PrepareTilesPending() const { |
| 119 return state_machine_.PrepareTilesPending(); | 119 return state_machine_.PrepareTilesPending(); |
| 120 } | 120 } |
| 121 bool BeginImplFrameDeadlinePending() const { | 121 bool BeginImplFrameDeadlinePending() const { |
| 122 return !begin_impl_frame_deadline_task_.IsCancelled(); | 122 return !begin_impl_frame_deadline_task_.IsCancelled(); |
| 123 } | 123 } |
| 124 bool ImplLatencyTakesPriority() const { | 124 bool ImplLatencyTakesPriority() const { |
| 125 return state_machine_.impl_latency_takes_priority(); | 125 return state_machine_.impl_latency_takes_priority(); |
| 126 } | 126 } |
| 127 | 127 |
| 128 void NotifyBeginMainFrameStarted(); | 128 // Pass in a main_thread_start_time of base::TimeTicks() if it is not |
| 129 // known (e.g. blink lives on a remote machine) to signal that the | |
| 130 // start time isn't known and should not be used for scheduling | |
| 131 // and statistics puposes. | |
|
Sami
2015/11/05 14:42:36
nit: I'm not sure if the remote machine example is
brianderson
2015/11/05 21:33:26
With STP, we can still get valid timestamps. I che
Sami
2015/11/06 11:27:49
Ah right, looks like I misread STP as passing in a
| |
| 132 void NotifyBeginMainFrameStarted(base::TimeTicks main_thread_start_time); | |
| 129 | 133 |
| 130 base::TimeTicks LastBeginImplFrameTime(); | 134 base::TimeTicks LastBeginImplFrameTime(); |
| 131 | 135 |
| 132 void SetDeferCommits(bool defer_commits); | 136 void SetDeferCommits(bool defer_commits); |
| 133 | 137 |
| 134 scoped_refptr<base::trace_event::ConvertableToTraceFormat> AsValue() const; | 138 scoped_refptr<base::trace_event::ConvertableToTraceFormat> AsValue() const; |
| 135 void AsValueInto(base::trace_event::TracedValue* value) const override; | 139 void AsValueInto(base::trace_event::TracedValue* value) const override; |
| 136 | 140 |
| 137 void SetChildrenNeedBeginFrames(bool children_need_begin_frames); | 141 void SetChildrenNeedBeginFrames(bool children_need_begin_frames); |
| 138 void SetVideoNeedsBeginFrames(bool video_needs_begin_frames); | 142 void SetVideoNeedsBeginFrames(bool video_needs_begin_frames); |
| (...skipping 27 matching lines...) Expand all Loading... | |
| 166 base::TimeDelta authoritative_vsync_interval_; | 170 base::TimeDelta authoritative_vsync_interval_; |
| 167 base::TimeTicks last_vsync_timebase_; | 171 base::TimeTicks last_vsync_timebase_; |
| 168 | 172 |
| 169 scoped_ptr<CompositorTimingHistory> compositor_timing_history_; | 173 scoped_ptr<CompositorTimingHistory> compositor_timing_history_; |
| 170 base::TimeDelta estimated_parent_draw_time_; | 174 base::TimeDelta estimated_parent_draw_time_; |
| 171 | 175 |
| 172 std::deque<BeginFrameArgs> begin_retro_frame_args_; | 176 std::deque<BeginFrameArgs> begin_retro_frame_args_; |
| 173 SchedulerStateMachine::BeginImplFrameDeadlineMode | 177 SchedulerStateMachine::BeginImplFrameDeadlineMode |
| 174 begin_impl_frame_deadline_mode_; | 178 begin_impl_frame_deadline_mode_; |
| 175 BeginFrameTracker begin_impl_frame_tracker_; | 179 BeginFrameTracker begin_impl_frame_tracker_; |
| 180 BeginFrameArgs begin_main_frame_args_; | |
| 176 | 181 |
| 177 base::Closure begin_retro_frame_closure_; | 182 base::Closure begin_retro_frame_closure_; |
| 178 base::Closure begin_impl_frame_deadline_closure_; | 183 base::Closure begin_impl_frame_deadline_closure_; |
| 179 base::CancelableClosure begin_retro_frame_task_; | 184 base::CancelableClosure begin_retro_frame_task_; |
| 180 base::CancelableClosure begin_impl_frame_deadline_task_; | 185 base::CancelableClosure begin_impl_frame_deadline_task_; |
| 181 | 186 |
| 182 SchedulerStateMachine state_machine_; | 187 SchedulerStateMachine state_machine_; |
| 183 bool inside_process_scheduled_actions_; | 188 bool inside_process_scheduled_actions_; |
| 184 SchedulerStateMachine::Action inside_action_; | 189 SchedulerStateMachine::Action inside_action_; |
| 185 | 190 |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 222 } | 227 } |
| 223 | 228 |
| 224 base::WeakPtrFactory<Scheduler> weak_factory_; | 229 base::WeakPtrFactory<Scheduler> weak_factory_; |
| 225 | 230 |
| 226 DISALLOW_COPY_AND_ASSIGN(Scheduler); | 231 DISALLOW_COPY_AND_ASSIGN(Scheduler); |
| 227 }; | 232 }; |
| 228 | 233 |
| 229 } // namespace cc | 234 } // namespace cc |
| 230 | 235 |
| 231 #endif // CC_SCHEDULER_SCHEDULER_H_ | 236 #endif // CC_SCHEDULER_SCHEDULER_H_ |
| OLD | NEW |