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 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
265 void DidCreateAndInitializeOutputSurface(); | 265 void DidCreateAndInitializeOutputSurface(); |
266 bool HasInitializedOutputSurface() const; | 266 bool HasInitializedOutputSurface() const; |
267 | 267 |
268 // True if we need to abort draws to make forward progress. | 268 // True if we need to abort draws to make forward progress. |
269 bool PendingDrawsShouldBeAborted() const; | 269 bool PendingDrawsShouldBeAborted() const; |
270 | 270 |
271 bool CouldSendBeginMainFrame() const; | 271 bool CouldSendBeginMainFrame() const; |
272 | 272 |
273 void SetDeferCommits(bool defer_commits); | 273 void SetDeferCommits(bool defer_commits); |
274 | 274 |
275 void SetChildrenNeedBeginFrames(bool children_need_begin_frames); | |
276 bool children_need_begin_frames() const { | |
277 return children_need_begin_frames_; | |
278 } | |
279 | |
280 void SetVideoNeedsBeginFrames(bool video_needs_begin_frames); | 275 void SetVideoNeedsBeginFrames(bool video_needs_begin_frames); |
281 bool video_needs_begin_frames() const { return video_needs_begin_frames_; } | 276 bool video_needs_begin_frames() const { return video_needs_begin_frames_; } |
282 | 277 |
283 protected: | 278 protected: |
284 bool BeginFrameRequiredForAction() const; | 279 bool BeginFrameRequiredForAction() const; |
285 bool BeginFrameRequiredForChildren() const; | |
286 bool BeginFrameNeededForVideo() const; | 280 bool BeginFrameNeededForVideo() const; |
287 bool ProactiveBeginFrameWanted() const; | 281 bool ProactiveBeginFrameWanted() const; |
288 | 282 |
289 bool ShouldTriggerBeginImplFrameDeadlineImmediately() const; | 283 bool ShouldTriggerBeginImplFrameDeadlineImmediately() const; |
290 | 284 |
291 // True if we need to force activations to make forward progress. | 285 // True if we need to force activations to make forward progress. |
292 // TODO(sunnyps): Rename this to ShouldAbortCurrentFrame or similar. | 286 // TODO(sunnyps): Rename this to ShouldAbortCurrentFrame or similar. |
293 bool PendingActivationsShouldBeForced() const; | 287 bool PendingActivationsShouldBeForced() const; |
294 | 288 |
295 // TODO(brianderson): Remove this once NPAPI support is removed. | 289 // TODO(brianderson): Remove this once NPAPI support is removed. |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
346 bool can_draw_; | 340 bool can_draw_; |
347 bool has_pending_tree_; | 341 bool has_pending_tree_; |
348 bool pending_tree_is_ready_for_activation_; | 342 bool pending_tree_is_ready_for_activation_; |
349 bool active_tree_needs_first_draw_; | 343 bool active_tree_needs_first_draw_; |
350 bool did_create_and_initialize_first_output_surface_; | 344 bool did_create_and_initialize_first_output_surface_; |
351 TreePriority tree_priority_; | 345 TreePriority tree_priority_; |
352 ScrollHandlerState scroll_handler_state_; | 346 ScrollHandlerState scroll_handler_state_; |
353 bool critical_begin_main_frame_to_activate_is_fast_; | 347 bool critical_begin_main_frame_to_activate_is_fast_; |
354 bool main_thread_missed_last_deadline_; | 348 bool main_thread_missed_last_deadline_; |
355 bool skip_next_begin_main_frame_to_reduce_latency_; | 349 bool skip_next_begin_main_frame_to_reduce_latency_; |
356 bool children_need_begin_frames_; | |
357 bool defer_commits_; | 350 bool defer_commits_; |
358 bool video_needs_begin_frames_; | 351 bool video_needs_begin_frames_; |
359 bool last_commit_had_no_updates_; | 352 bool last_commit_had_no_updates_; |
360 bool wait_for_ready_to_draw_; | 353 bool wait_for_ready_to_draw_; |
361 bool did_draw_in_last_frame_; | 354 bool did_draw_in_last_frame_; |
362 bool did_swap_in_last_frame_; | 355 bool did_swap_in_last_frame_; |
363 | 356 |
364 private: | 357 private: |
365 DISALLOW_COPY_AND_ASSIGN(SchedulerStateMachine); | 358 DISALLOW_COPY_AND_ASSIGN(SchedulerStateMachine); |
366 }; | 359 }; |
367 | 360 |
368 } // namespace cc | 361 } // namespace cc |
369 | 362 |
370 #endif // CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ | 363 #endif // CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ |
OLD | NEW |