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 |
158 BeginImplFrameState begin_impl_frame_state() const { | 161 BeginImplFrameState begin_impl_frame_state() const { |
159 return begin_impl_frame_state_; | 162 return begin_impl_frame_state_; |
160 } | 163 } |
161 BeginImplFrameDeadlineMode CurrentBeginImplFrameDeadlineMode() const; | 164 BeginImplFrameDeadlineMode CurrentBeginImplFrameDeadlineMode() const; |
162 | 165 |
163 // If the main thread didn't manage to produce a new frame in time for the | 166 // If the main thread didn't manage to produce a new frame in time for the |
164 // impl thread to draw, it is in a high latency mode. | 167 // impl thread to draw, it is in a high latency mode. |
165 bool main_thread_missed_last_deadline() const { | 168 bool main_thread_missed_last_deadline() const { |
166 return main_thread_missed_last_deadline_; | 169 return main_thread_missed_last_deadline_; |
167 } | 170 } |
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
347 bool did_draw_in_last_frame_; | 350 bool did_draw_in_last_frame_; |
348 bool did_swap_in_last_frame_; | 351 bool did_swap_in_last_frame_; |
349 | 352 |
350 private: | 353 private: |
351 DISALLOW_COPY_AND_ASSIGN(SchedulerStateMachine); | 354 DISALLOW_COPY_AND_ASSIGN(SchedulerStateMachine); |
352 }; | 355 }; |
353 | 356 |
354 } // namespace cc | 357 } // namespace cc |
355 | 358 |
356 #endif // CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ | 359 #endif // CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ |
OLD | NEW |