| 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 THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_RENDERER_RENDERER_SCHEDULER
_IMPL_H_ | 5 #ifndef THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_RENDERER_RENDERER_SCHEDULER
_IMPL_H_ |
| 6 #define THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_RENDERER_RENDERER_SCHEDULER
_IMPL_H_ | 6 #define THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_RENDERER_RENDERER_SCHEDULER
_IMPL_H_ |
| 7 | 7 |
| 8 #include "base/atomicops.h" | 8 #include "base/atomicops.h" |
| 9 #include "base/gtest_prod_util.h" | 9 #include "base/gtest_prod_util.h" |
| 10 #include "base/macros.h" | 10 #include "base/macros.h" |
| 11 #include "base/synchronization/lock.h" | 11 #include "base/synchronization/lock.h" |
| 12 #include "base/trace_event/trace_log.h" | 12 #include "base/trace_event/trace_log.h" |
| 13 #include "device/base/synchronization/shared_memory_seqlock_buffer.h" | 13 #include "device/base/synchronization/shared_memory_seqlock_buffer.h" |
| 14 #include "platform/scheduler/base/pollable_thread_safe_flag.h" | 14 #include "platform/scheduler/base/pollable_thread_safe_flag.h" |
| 15 #include "platform/scheduler/base/queueing_time_estimator.h" | 15 #include "platform/scheduler/base/queueing_time_estimator.h" |
| 16 #include "platform/scheduler/base/thread_load_tracker.h" | 16 #include "platform/scheduler/base/thread_load_tracker.h" |
| 17 #include "platform/scheduler/child/idle_canceled_delayed_task_sweeper.h" |
| 17 #include "platform/scheduler/child/idle_helper.h" | 18 #include "platform/scheduler/child/idle_helper.h" |
| 18 #include "platform/scheduler/child/scheduler_helper.h" | 19 #include "platform/scheduler/child/scheduler_helper.h" |
| 19 #include "platform/scheduler/renderer/deadline_task_runner.h" | 20 #include "platform/scheduler/renderer/deadline_task_runner.h" |
| 20 #include "platform/scheduler/renderer/idle_time_estimator.h" | 21 #include "platform/scheduler/renderer/idle_time_estimator.h" |
| 21 #include "platform/scheduler/renderer/render_widget_signals.h" | 22 #include "platform/scheduler/renderer/render_widget_signals.h" |
| 22 #include "platform/scheduler/renderer/task_cost_estimator.h" | 23 #include "platform/scheduler/renderer/task_cost_estimator.h" |
| 23 #include "platform/scheduler/renderer/user_model.h" | 24 #include "platform/scheduler/renderer/user_model.h" |
| 24 #include "platform/scheduler/renderer/web_view_scheduler_impl.h" | 25 #include "platform/scheduler/renderer/web_view_scheduler_impl.h" |
| 25 #include "public/platform/scheduler/renderer/renderer_scheduler.h" | 26 #include "public/platform/scheduler/renderer/renderer_scheduler.h" |
| 26 #include "public/platform/scheduler/base/task_time_observer.h" | 27 #include "public/platform/scheduler/base/task_time_observer.h" |
| (...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 369 const TaskQueuePolicy& old_task_queue_policy, | 370 const TaskQueuePolicy& old_task_queue_policy, |
| 370 const TaskQueuePolicy& new_task_queue_policy) const; | 371 const TaskQueuePolicy& new_task_queue_policy) const; |
| 371 | 372 |
| 372 static const char* ExpensiveTaskPolicyToString( | 373 static const char* ExpensiveTaskPolicyToString( |
| 373 ExpensiveTaskPolicy expensive_task_policy); | 374 ExpensiveTaskPolicy expensive_task_policy); |
| 374 | 375 |
| 375 bool ShouldDisableThrottlingBecauseOfAudio(base::TimeTicks now); | 376 bool ShouldDisableThrottlingBecauseOfAudio(base::TimeTicks now); |
| 376 | 377 |
| 377 SchedulerHelper helper_; | 378 SchedulerHelper helper_; |
| 378 IdleHelper idle_helper_; | 379 IdleHelper idle_helper_; |
| 380 IdleCanceledDelayedTaskSweeper idle_canceled_delayed_task_sweeper_; |
| 379 std::unique_ptr<TaskQueueThrottler> task_queue_throttler_; | 381 std::unique_ptr<TaskQueueThrottler> task_queue_throttler_; |
| 380 RenderWidgetSignals render_widget_scheduler_signals_; | 382 RenderWidgetSignals render_widget_scheduler_signals_; |
| 381 | 383 |
| 382 const scoped_refptr<TaskQueue> control_task_runner_; | 384 const scoped_refptr<TaskQueue> control_task_runner_; |
| 383 const scoped_refptr<TaskQueue> compositor_task_runner_; | 385 const scoped_refptr<TaskQueue> compositor_task_runner_; |
| 384 std::unique_ptr<TaskQueue::QueueEnabledVoter> | 386 std::unique_ptr<TaskQueue::QueueEnabledVoter> |
| 385 compositor_task_runner_enabled_voter_; | 387 compositor_task_runner_enabled_voter_; |
| 386 | 388 |
| 387 using TaskQueueVoterMap = | 389 using TaskQueueVoterMap = |
| 388 std::map<scoped_refptr<TaskQueue>, | 390 std::map<scoped_refptr<TaskQueue>, |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 527 | 529 |
| 528 base::WeakPtrFactory<RendererSchedulerImpl> weak_factory_; | 530 base::WeakPtrFactory<RendererSchedulerImpl> weak_factory_; |
| 529 | 531 |
| 530 DISALLOW_COPY_AND_ASSIGN(RendererSchedulerImpl); | 532 DISALLOW_COPY_AND_ASSIGN(RendererSchedulerImpl); |
| 531 }; | 533 }; |
| 532 | 534 |
| 533 } // namespace scheduler | 535 } // namespace scheduler |
| 534 } // namespace blink | 536 } // namespace blink |
| 535 | 537 |
| 536 #endif // THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_RENDERER_RENDERER_SCHEDU
LER_IMPL_H_ | 538 #endif // THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_RENDERER_RENDERER_SCHEDU
LER_IMPL_H_ |
| OLD | NEW |