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 CONTENT_RENDERER_SCHEDULER_RENDERER_SCHEDULER_IMPL_H_ | 5 #ifndef CONTENT_RENDERER_SCHEDULER_RENDERER_SCHEDULER_IMPL_H_ |
6 #define CONTENT_RENDERER_SCHEDULER_RENDERER_SCHEDULER_IMPL_H_ | 6 #define CONTENT_RENDERER_SCHEDULER_RENDERER_SCHEDULER_IMPL_H_ |
7 | 7 |
8 #include "base/atomicops.h" | 8 #include "base/atomicops.h" |
9 #include "base/synchronization/lock.h" | 9 #include "base/synchronization/lock.h" |
10 #include "base/threading/thread_checker.h" | 10 #include "base/threading/thread_checker.h" |
11 #include "cc/test/test_now_source.h" | 11 #include "cc/test/test_now_source.h" |
12 #include "content/renderer/scheduler/cancelable_closure_holder.h" | 12 #include "content/renderer/scheduler/cancelable_closure_holder.h" |
13 #include "content/renderer/scheduler/nestable_single_thread_task_runner.h" | |
Sami
2015/03/12 18:53:11
nit: Can you forward declare this instead?
rmcilroy
2015/03/13 10:56:53
Yup, done.
| |
13 #include "content/renderer/scheduler/renderer_scheduler.h" | 14 #include "content/renderer/scheduler/renderer_scheduler.h" |
14 #include "content/renderer/scheduler/single_thread_idle_task_runner.h" | 15 #include "content/renderer/scheduler/single_thread_idle_task_runner.h" |
15 #include "content/renderer/scheduler/task_queue_manager.h" | 16 #include "content/renderer/scheduler/task_queue_manager.h" |
16 | 17 |
17 namespace base { | 18 namespace base { |
18 namespace trace_event { | 19 namespace trace_event { |
19 class ConvertableToTraceFormat; | 20 class ConvertableToTraceFormat; |
20 } | 21 } |
21 } | 22 } |
22 | 23 |
23 namespace content { | 24 namespace content { |
24 | 25 |
25 class RendererTaskQueueSelector; | 26 class RendererTaskQueueSelector; |
26 | 27 |
27 class CONTENT_EXPORT RendererSchedulerImpl : public RendererScheduler { | 28 class CONTENT_EXPORT RendererSchedulerImpl : public RendererScheduler { |
28 public: | 29 public: |
29 RendererSchedulerImpl( | 30 RendererSchedulerImpl( |
30 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner); | 31 scoped_refptr<NestableSingleThreadTaskRunner> main_task_runner); |
31 ~RendererSchedulerImpl() override; | 32 ~RendererSchedulerImpl() override; |
32 | 33 |
33 // RendererScheduler implementation: | 34 // RendererScheduler implementation: |
34 scoped_refptr<base::SingleThreadTaskRunner> DefaultTaskRunner() override; | 35 scoped_refptr<base::SingleThreadTaskRunner> DefaultTaskRunner() override; |
35 scoped_refptr<base::SingleThreadTaskRunner> CompositorTaskRunner() override; | 36 scoped_refptr<base::SingleThreadTaskRunner> CompositorTaskRunner() override; |
36 scoped_refptr<SingleThreadIdleTaskRunner> IdleTaskRunner() override; | 37 scoped_refptr<SingleThreadIdleTaskRunner> IdleTaskRunner() override; |
37 scoped_refptr<base::SingleThreadTaskRunner> LoadingTaskRunner() override; | 38 scoped_refptr<base::SingleThreadTaskRunner> LoadingTaskRunner() override; |
38 void WillBeginFrame(const cc::BeginFrameArgs& args) override; | 39 void WillBeginFrame(const cc::BeginFrameArgs& args) override; |
39 void BeginFrameNotExpectedSoon() override; | 40 void BeginFrameNotExpectedSoon() override; |
40 void DidCommitFrameToCompositor() override; | 41 void DidCommitFrameToCompositor() override; |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
178 | 179 |
179 base::WeakPtr<RendererSchedulerImpl> weak_renderer_scheduler_ptr_; | 180 base::WeakPtr<RendererSchedulerImpl> weak_renderer_scheduler_ptr_; |
180 base::WeakPtrFactory<RendererSchedulerImpl> weak_factory_; | 181 base::WeakPtrFactory<RendererSchedulerImpl> weak_factory_; |
181 | 182 |
182 DISALLOW_COPY_AND_ASSIGN(RendererSchedulerImpl); | 183 DISALLOW_COPY_AND_ASSIGN(RendererSchedulerImpl); |
183 }; | 184 }; |
184 | 185 |
185 } // namespace content | 186 } // namespace content |
186 | 187 |
187 #endif // CONTENT_RENDERER_SCHEDULER_RENDERER_SCHEDULER_IMPL_H_ | 188 #endif // CONTENT_RENDERER_SCHEDULER_RENDERER_SCHEDULER_IMPL_H_ |
OLD | NEW |