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 #include "cc/scheduler/scheduler.h" | 5 #include "cc/scheduler/scheduler.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/auto_reset.h" | 9 #include "base/auto_reset.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 24 matching lines...) Expand all Loading... |
35 scoped_ptr<CompositorTimingHistory> compositor_timing_history) { | 35 scoped_ptr<CompositorTimingHistory> compositor_timing_history) { |
36 scoped_ptr<SyntheticBeginFrameSource> synthetic_frame_source; | 36 scoped_ptr<SyntheticBeginFrameSource> synthetic_frame_source; |
37 if (!settings.use_external_begin_frame_source) { | 37 if (!settings.use_external_begin_frame_source) { |
38 synthetic_frame_source = SyntheticBeginFrameSource::Create( | 38 synthetic_frame_source = SyntheticBeginFrameSource::Create( |
39 task_runner, BeginFrameArgs::DefaultInterval()); | 39 task_runner, BeginFrameArgs::DefaultInterval()); |
40 } | 40 } |
41 scoped_ptr<BackToBackBeginFrameSource> unthrottled_frame_source = | 41 scoped_ptr<BackToBackBeginFrameSource> unthrottled_frame_source = |
42 BackToBackBeginFrameSource::Create(task_runner); | 42 BackToBackBeginFrameSource::Create(task_runner); |
43 return make_scoped_ptr(new Scheduler( | 43 return make_scoped_ptr(new Scheduler( |
44 client, settings, layer_tree_host_id, task_runner, external_frame_source, | 44 client, settings, layer_tree_host_id, task_runner, external_frame_source, |
45 synthetic_frame_source.Pass(), unthrottled_frame_source.Pass(), | 45 std::move(synthetic_frame_source), std::move(unthrottled_frame_source), |
46 compositor_timing_history.Pass())); | 46 std::move(compositor_timing_history))); |
47 } | 47 } |
48 | 48 |
49 Scheduler::Scheduler( | 49 Scheduler::Scheduler( |
50 SchedulerClient* client, | 50 SchedulerClient* client, |
51 const SchedulerSettings& settings, | 51 const SchedulerSettings& settings, |
52 int layer_tree_host_id, | 52 int layer_tree_host_id, |
53 base::SingleThreadTaskRunner* task_runner, | 53 base::SingleThreadTaskRunner* task_runner, |
54 BeginFrameSource* external_frame_source, | 54 BeginFrameSource* external_frame_source, |
55 scoped_ptr<SyntheticBeginFrameSource> synthetic_frame_source, | 55 scoped_ptr<SyntheticBeginFrameSource> synthetic_frame_source, |
56 scoped_ptr<BackToBackBeginFrameSource> unthrottled_frame_source, | 56 scoped_ptr<BackToBackBeginFrameSource> unthrottled_frame_source, |
57 scoped_ptr<CompositorTimingHistory> compositor_timing_history) | 57 scoped_ptr<CompositorTimingHistory> compositor_timing_history) |
58 : settings_(settings), | 58 : settings_(settings), |
59 client_(client), | 59 client_(client), |
60 layer_tree_host_id_(layer_tree_host_id), | 60 layer_tree_host_id_(layer_tree_host_id), |
61 task_runner_(task_runner), | 61 task_runner_(task_runner), |
62 external_frame_source_(external_frame_source), | 62 external_frame_source_(external_frame_source), |
63 synthetic_frame_source_(synthetic_frame_source.Pass()), | 63 synthetic_frame_source_(std::move(synthetic_frame_source)), |
64 unthrottled_frame_source_(unthrottled_frame_source.Pass()), | 64 unthrottled_frame_source_(std::move(unthrottled_frame_source)), |
65 frame_source_(BeginFrameSourceMultiplexer::Create()), | 65 frame_source_(BeginFrameSourceMultiplexer::Create()), |
66 throttle_frame_production_(false), | 66 throttle_frame_production_(false), |
67 compositor_timing_history_(compositor_timing_history.Pass()), | 67 compositor_timing_history_(std::move(compositor_timing_history)), |
68 begin_impl_frame_deadline_mode_( | 68 begin_impl_frame_deadline_mode_( |
69 SchedulerStateMachine::BEGIN_IMPL_FRAME_DEADLINE_MODE_NONE), | 69 SchedulerStateMachine::BEGIN_IMPL_FRAME_DEADLINE_MODE_NONE), |
70 begin_impl_frame_tracker_(BEGINFRAMETRACKER_FROM_HERE), | 70 begin_impl_frame_tracker_(BEGINFRAMETRACKER_FROM_HERE), |
71 state_machine_(settings), | 71 state_machine_(settings), |
72 inside_process_scheduled_actions_(false), | 72 inside_process_scheduled_actions_(false), |
73 inside_action_(SchedulerStateMachine::ACTION_NONE), | 73 inside_action_(SchedulerStateMachine::ACTION_NONE), |
74 weak_factory_(this) { | 74 weak_factory_(this) { |
75 TRACE_EVENT1("cc", "Scheduler::Scheduler", "settings", settings_.AsValue()); | 75 TRACE_EVENT1("cc", "Scheduler::Scheduler", "settings", settings_.AsValue()); |
76 DCHECK(client_); | 76 DCHECK(client_); |
77 DCHECK(!state_machine_.BeginFrameNeeded()); | 77 DCHECK(!state_machine_.BeginFrameNeeded()); |
(...skipping 765 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
843 } | 843 } |
844 | 844 |
845 bool Scheduler::IsBeginMainFrameSentOrStarted() const { | 845 bool Scheduler::IsBeginMainFrameSentOrStarted() const { |
846 return (state_machine_.begin_main_frame_state() == | 846 return (state_machine_.begin_main_frame_state() == |
847 SchedulerStateMachine::BEGIN_MAIN_FRAME_STATE_SENT || | 847 SchedulerStateMachine::BEGIN_MAIN_FRAME_STATE_SENT || |
848 state_machine_.begin_main_frame_state() == | 848 state_machine_.begin_main_frame_state() == |
849 SchedulerStateMachine::BEGIN_MAIN_FRAME_STATE_STARTED); | 849 SchedulerStateMachine::BEGIN_MAIN_FRAME_STATE_STARTED); |
850 } | 850 } |
851 | 851 |
852 } // namespace cc | 852 } // namespace cc |
OLD | NEW |