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_H_ | 5 #ifndef COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_H_ |
6 #define COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_H_ | 6 #define COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 // TODO(alexclarke): Get rid of this default timer queue. | 61 // TODO(alexclarke): Get rid of this default timer queue. |
62 virtual scoped_refptr<TaskQueue> TimerTaskRunner() = 0; | 62 virtual scoped_refptr<TaskQueue> TimerTaskRunner() = 0; |
63 | 63 |
64 // Returns a new loading task runner. This queue is intended for tasks related | 64 // Returns a new loading task runner. This queue is intended for tasks related |
65 // to resource dispatch, foreground HTML parsing, etc... | 65 // to resource dispatch, foreground HTML parsing, etc... |
66 virtual scoped_refptr<TaskQueue> NewLoadingTaskRunner(const char* name) = 0; | 66 virtual scoped_refptr<TaskQueue> NewLoadingTaskRunner(const char* name) = 0; |
67 | 67 |
68 // Returns a new timer task runner. This queue is intended for DOM Timers. | 68 // Returns a new timer task runner. This queue is intended for DOM Timers. |
69 virtual scoped_refptr<TaskQueue> NewTimerTaskRunner(const char* name) = 0; | 69 virtual scoped_refptr<TaskQueue> NewTimerTaskRunner(const char* name) = 0; |
70 | 70 |
| 71 // Returns a task runner for tasks which should never get throttled. |
| 72 virtual scoped_refptr<TaskQueue> NewUnthrottledTaskRunner( |
| 73 const char* name) = 0; |
| 74 |
71 // Returns a new RenderWidgetSchedulingState. The signals from this will be | 75 // Returns a new RenderWidgetSchedulingState. The signals from this will be |
72 // used to make scheduling decisions. | 76 // used to make scheduling decisions. |
73 virtual std::unique_ptr<RenderWidgetSchedulingState> | 77 virtual std::unique_ptr<RenderWidgetSchedulingState> |
74 NewRenderWidgetSchedulingState() = 0; | 78 NewRenderWidgetSchedulingState() = 0; |
75 | 79 |
76 // Called to notify about the start of an extended period where no frames | 80 // Called to notify about the start of an extended period where no frames |
77 // need to be drawn. Must be called from the main thread. | 81 // need to be drawn. Must be called from the main thread. |
78 virtual void BeginFrameNotExpectedSoon() = 0; | 82 virtual void BeginFrameNotExpectedSoon() = 0; |
79 | 83 |
80 // Called to notify about the start of a new frame. Must be called from the | 84 // Called to notify about the start of a new frame. Must be called from the |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 virtual void SetRAILModeObserver(RAILModeObserver* observer) = 0; | 179 virtual void SetRAILModeObserver(RAILModeObserver* observer) = 0; |
176 | 180 |
177 protected: | 181 protected: |
178 RendererScheduler(); | 182 RendererScheduler(); |
179 DISALLOW_COPY_AND_ASSIGN(RendererScheduler); | 183 DISALLOW_COPY_AND_ASSIGN(RendererScheduler); |
180 }; | 184 }; |
181 | 185 |
182 } // namespace scheduler | 186 } // namespace scheduler |
183 | 187 |
184 #endif // COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_H_ | 188 #endif // COMPONENTS_SCHEDULER_RENDERER_RENDERER_SCHEDULER_H_ |
OLD | NEW |