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_STATE_MACHINE_H_ | 5 #ifndef CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ |
6 #define CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ | 6 #define CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 | 148 |
149 // Indicates that the system has entered and left a BeginImplFrame callback. | 149 // Indicates that the system has entered and left a BeginImplFrame callback. |
150 // The scheduler will not draw more than once in a given BeginImplFrame | 150 // The scheduler will not draw more than once in a given BeginImplFrame |
151 // callback nor send more than one BeginMainFrame message. | 151 // callback nor send more than one BeginMainFrame message. |
152 void OnBeginImplFrame(); | 152 void OnBeginImplFrame(); |
153 // Indicates that the scheduler has entered the draw phase. The scheduler | 153 // Indicates that the scheduler has entered the draw phase. The scheduler |
154 // will not draw more than once in a single draw phase. | 154 // will not draw more than once in a single draw phase. |
155 // TODO(sunnyps): Rename OnBeginImplFrameDeadline to OnDraw or similar. | 155 // TODO(sunnyps): Rename OnBeginImplFrameDeadline to OnDraw or similar. |
156 void OnBeginImplFrameDeadline(); | 156 void OnBeginImplFrameDeadline(); |
157 void OnBeginImplFrameIdle(); | 157 void OnBeginImplFrameIdle(); |
158 | |
159 int current_frame_number() const { return current_frame_number_; } | |
160 | |
161 BeginImplFrameState begin_impl_frame_state() const { | 158 BeginImplFrameState begin_impl_frame_state() const { |
162 return begin_impl_frame_state_; | 159 return begin_impl_frame_state_; |
163 } | 160 } |
164 BeginImplFrameDeadlineMode CurrentBeginImplFrameDeadlineMode() const; | 161 BeginImplFrameDeadlineMode CurrentBeginImplFrameDeadlineMode() const; |
165 | 162 |
166 // If the main thread didn't manage to produce a new frame in time for the | 163 // If the main thread didn't manage to produce a new frame in time for the |
167 // impl thread to draw, it is in a high latency mode. | 164 // impl thread to draw, it is in a high latency mode. |
168 bool main_thread_missed_last_deadline() const { | 165 bool main_thread_missed_last_deadline() const { |
169 return main_thread_missed_last_deadline_; | 166 return main_thread_missed_last_deadline_; |
170 } | 167 } |
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
350 bool did_draw_in_last_frame_; | 347 bool did_draw_in_last_frame_; |
351 bool did_swap_in_last_frame_; | 348 bool did_swap_in_last_frame_; |
352 | 349 |
353 private: | 350 private: |
354 DISALLOW_COPY_AND_ASSIGN(SchedulerStateMachine); | 351 DISALLOW_COPY_AND_ASSIGN(SchedulerStateMachine); |
355 }; | 352 }; |
356 | 353 |
357 } // namespace cc | 354 } // namespace cc |
358 | 355 |
359 #endif // CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ | 356 #endif // CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ |
OLD | NEW |