OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef CONTENT_RENDERER_SCHEDULER_WEBTHREAD_IMPL_FOR_SCHEDULER_H_ | |
6 #define CONTENT_RENDERER_SCHEDULER_WEBTHREAD_IMPL_FOR_SCHEDULER_H_ | |
7 | |
8 #include "content/child/webthread_impl.h" | |
9 | |
10 #include "base/containers/scoped_ptr_hash_map.h" | |
11 | |
12 namespace content { | |
13 namespace internal { | |
14 class NestedTaskObserver; | |
15 } | |
16 | |
17 class RendererScheduler; | |
18 | |
19 class CONTENT_EXPORT WebThreadImplForScheduler : public WebThreadBase { | |
20 public: | |
21 explicit WebThreadImplForScheduler(RendererScheduler* scheduler); | |
22 virtual ~WebThreadImplForScheduler(); | |
23 | |
24 // blink::WebThread implementation. | |
25 virtual blink::PlatformThreadId threadId() const; | |
26 virtual void addTaskObserver(TaskObserver* observer); | |
27 virtual void removeTaskObserver(TaskObserver* observer); | |
rmcilroy
2015/02/19 11:47:49
Should these be marked override instead (they are
Sami
2015/02/19 16:31:09
True, I guess I was being overly paranoid. Fixed.
| |
28 | |
29 // WebThreadBase implementation. | |
30 base::SingleThreadTaskRunner* TaskRunner() const override; | |
31 | |
32 private: | |
33 base::MessageLoop* MessageLoop() const override; | |
34 | |
35 typedef base::ScopedPtrHashMap<blink::WebThread::TaskObserver*, | |
36 internal::NestedTaskObserver> | |
37 NestedTaskObserverMap; | |
38 NestedTaskObserverMap nested_task_observer_map_; | |
39 | |
40 scoped_refptr<base::SingleThreadTaskRunner> task_runner_; | |
41 RendererScheduler* scheduler_; // Not owned. | |
42 blink::PlatformThreadId thread_id_; | |
43 }; | |
44 | |
45 } // namespace content | |
46 | |
47 #endif // CONTENT_RENDERER_SCHEDULER_WEBTHREAD_IMPL_FOR_SCHEDULER_H_ | |
OLD | NEW |