| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_IMPL_H_ | 5 #ifndef COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_IMPL_H_ |
| 6 #define COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_IMPL_H_ | 6 #define COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_IMPL_H_ |
| 7 | 7 |
| 8 #include "base/atomicops.h" | 8 #include "base/atomicops.h" |
| 9 #include "base/macros.h" | 9 #include "base/macros.h" |
| 10 #include "base/synchronization/lock.h" | 10 #include "base/synchronization/lock.h" |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 | 99 |
| 100 void AddWebViewScheduler(WebViewSchedulerImpl* web_view_scheduler); | 100 void AddWebViewScheduler(WebViewSchedulerImpl* web_view_scheduler); |
| 101 void RemoveWebViewScheduler(WebViewSchedulerImpl* web_view_scheduler); | 101 void RemoveWebViewScheduler(WebViewSchedulerImpl* web_view_scheduler); |
| 102 | 102 |
| 103 // Test helpers. | 103 // Test helpers. |
| 104 SchedulerHelper* GetSchedulerHelperForTesting(); | 104 SchedulerHelper* GetSchedulerHelperForTesting(); |
| 105 TaskCostEstimator* GetLoadingTaskCostEstimatorForTesting(); | 105 TaskCostEstimator* GetLoadingTaskCostEstimatorForTesting(); |
| 106 TaskCostEstimator* GetTimerTaskCostEstimatorForTesting(); | 106 TaskCostEstimator* GetTimerTaskCostEstimatorForTesting(); |
| 107 IdleTimeEstimator* GetIdleTimeEstimatorForTesting(); | 107 IdleTimeEstimator* GetIdleTimeEstimatorForTesting(); |
| 108 base::TimeTicks CurrentIdleTaskDeadlineForTesting() const; | 108 base::TimeTicks CurrentIdleTaskDeadlineForTesting() const; |
| 109 void RunIdleTasksForTesting(const base::Closure& callback); |
| 110 void EndIdlePeriodForTesting(const base::Closure& callback); |
| 109 | 111 |
| 110 base::TickClock* tick_clock() const; | 112 base::TickClock* tick_clock() const; |
| 111 | 113 |
| 112 RealTimeDomain* real_time_domain() const { | 114 RealTimeDomain* real_time_domain() const { |
| 113 return helper_.real_time_domain(); | 115 return helper_.real_time_domain(); |
| 114 } | 116 } |
| 115 | 117 |
| 116 ThrottlingHelper* throttling_helper() { return throttling_helper_.get(); } | 118 ThrottlingHelper* throttling_helper() { return throttling_helper_.get(); } |
| 117 | 119 |
| 118 private: | 120 private: |
| (...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 336 bool was_shutdown; | 338 bool was_shutdown; |
| 337 bool loading_tasks_seem_expensive; | 339 bool loading_tasks_seem_expensive; |
| 338 bool timer_tasks_seem_expensive; | 340 bool timer_tasks_seem_expensive; |
| 339 bool touchstart_expected_soon; | 341 bool touchstart_expected_soon; |
| 340 bool have_seen_a_begin_main_frame; | 342 bool have_seen_a_begin_main_frame; |
| 341 bool have_reported_blocking_intervention_in_current_policy; | 343 bool have_reported_blocking_intervention_in_current_policy; |
| 342 bool have_reported_blocking_intervention_since_navigation; | 344 bool have_reported_blocking_intervention_since_navigation; |
| 343 bool has_visible_render_widget_with_touch_handler; | 345 bool has_visible_render_widget_with_touch_handler; |
| 344 bool begin_frame_not_expected_soon; | 346 bool begin_frame_not_expected_soon; |
| 345 bool expensive_task_blocking_allowed; | 347 bool expensive_task_blocking_allowed; |
| 348 bool in_idle_period_for_testing; |
| 346 std::set<WebViewSchedulerImpl*> web_view_schedulers_; // Not owned. | 349 std::set<WebViewSchedulerImpl*> web_view_schedulers_; // Not owned. |
| 347 }; | 350 }; |
| 348 | 351 |
| 349 struct AnyThread { | 352 struct AnyThread { |
| 350 AnyThread(); | 353 AnyThread(); |
| 351 ~AnyThread(); | 354 ~AnyThread(); |
| 352 | 355 |
| 353 base::TimeTicks last_idle_period_end_time; | 356 base::TimeTicks last_idle_period_end_time; |
| 354 base::TimeTicks rails_loading_priority_deadline; | 357 base::TimeTicks rails_loading_priority_deadline; |
| 355 base::TimeTicks fling_compositor_escalation_deadline; | 358 base::TimeTicks fling_compositor_escalation_deadline; |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 411 | 414 |
| 412 PollableThreadSafeFlag policy_may_need_update_; | 415 PollableThreadSafeFlag policy_may_need_update_; |
| 413 base::WeakPtrFactory<RendererSchedulerImpl> weak_factory_; | 416 base::WeakPtrFactory<RendererSchedulerImpl> weak_factory_; |
| 414 | 417 |
| 415 DISALLOW_COPY_AND_ASSIGN(RendererSchedulerImpl); | 418 DISALLOW_COPY_AND_ASSIGN(RendererSchedulerImpl); |
| 416 }; | 419 }; |
| 417 | 420 |
| 418 } // namespace scheduler | 421 } // namespace scheduler |
| 419 | 422 |
| 420 #endif // COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_IMPL_H_ | 423 #endif // COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_IMPL_H_ |
| OLD | NEW |