Index: components/scheduler/renderer/renderer_scheduler_impl.h |
diff --git a/components/scheduler/renderer/renderer_scheduler_impl.h b/components/scheduler/renderer/renderer_scheduler_impl.h |
index 6fb097a19a77ede866d0145e0fc64b9b43b0d558..0f500fd9c7d48ae5f56b790920ea1ae33b5ada84 100644 |
--- a/components/scheduler/renderer/renderer_scheduler_impl.h |
+++ b/components/scheduler/renderer/renderer_scheduler_impl.h |
@@ -15,6 +15,7 @@ |
#include "components/scheduler/renderer/render_widget_signals.h" |
#include "components/scheduler/renderer/renderer_scheduler.h" |
#include "components/scheduler/renderer/task_cost_estimator.h" |
+#include "components/scheduler/renderer/throttling_helper.h" |
#include "components/scheduler/renderer/user_model.h" |
#include "components/scheduler/scheduler_export.h" |
@@ -26,6 +27,7 @@ class ConvertableToTraceFormat; |
namespace scheduler { |
class RenderWidgetSchedulingState; |
+class ThrottlingHelper; |
class SCHEDULER_EXPORT RendererSchedulerImpl |
: public RendererScheduler, |
@@ -82,6 +84,12 @@ class SCHEDULER_EXPORT RendererSchedulerImpl |
// TaskQueueManager::Observer implementation: |
void OnUnregisterTaskQueue(const scoped_refptr<TaskQueue>& queue) override; |
+ // Returns a task runner where tasks run at the highest possible priority. |
+ scoped_refptr<TaskQueue> ControlTaskRunner(); |
+ |
+ void RegisterTimeDomain(const scoped_refptr<TimeDomain>& time_domain); |
+ void UnregisterTimeDomain(const scoped_refptr<TimeDomain>& time_domain); |
+ |
// Test helpers. |
SchedulerHelper* GetSchedulerHelperForTesting(); |
TaskCostEstimator* GetLoadingTaskCostEstimatorForTesting(); |
@@ -89,6 +97,12 @@ class SCHEDULER_EXPORT RendererSchedulerImpl |
IdleTimeEstimator* GetIdleTimeEstimatorForTesting(); |
base::TimeTicks CurrentIdleTaskDeadlineForTesting() const; |
+ const scoped_refptr<RealTimeDomain>& real_time_domain() const { |
+ return helper_.real_time_domain(); |
+ } |
+ |
+ ThrottlingHelper* throttling_helper() { return &throttling_helper_; } |
+ |
private: |
friend class RendererSchedulerImplTest; |
friend class RendererSchedulerImplForTest; |
@@ -233,6 +247,7 @@ class SCHEDULER_EXPORT RendererSchedulerImpl |
SchedulerHelper helper_; |
IdleHelper idle_helper_; |
+ ThrottlingHelper throttling_helper_; |
RenderWidgetSignals render_widget_scheduler_signals_; |
const scoped_refptr<TaskQueue> control_task_runner_; |
@@ -241,6 +256,7 @@ class SCHEDULER_EXPORT RendererSchedulerImpl |
std::set<scoped_refptr<TaskQueue>> timer_task_runners_; |
scoped_refptr<TaskQueue> default_loading_task_runner_; |
scoped_refptr<TaskQueue> default_timer_task_runner_; |
+ scoped_refptr<VirtualTimeDomain> virtual_time_domain_; |
Sami
2015/11/24 12:48:48
Is this used for anything?
alex clarke (OOO till 29th)
2015/11/25 12:29:36
Done.
|
base::Closure update_policy_closure_; |
DeadlineTaskRunner delayed_update_policy_runner_; |