OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 CC_TREES_THREAD_PROXY_H_ | 5 #ifndef CC_TREES_THREAD_PROXY_H_ |
6 #define CC_TREES_THREAD_PROXY_H_ | 6 #define CC_TREES_THREAD_PROXY_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
62 virtual void AcquireLayerTextures() OVERRIDE; | 62 virtual void AcquireLayerTextures() OVERRIDE; |
63 virtual void ForceSerializeOnSwapBuffers() OVERRIDE; | 63 virtual void ForceSerializeOnSwapBuffers() OVERRIDE; |
64 virtual scoped_ptr<base::Value> AsValue() const OVERRIDE; | 64 virtual scoped_ptr<base::Value> AsValue() const OVERRIDE; |
65 virtual bool CommitPendingForTesting() OVERRIDE; | 65 virtual bool CommitPendingForTesting() OVERRIDE; |
66 virtual scoped_ptr<base::Value> SchedulerStateAsValueForTesting() OVERRIDE; | 66 virtual scoped_ptr<base::Value> SchedulerStateAsValueForTesting() OVERRIDE; |
67 | 67 |
68 // LayerTreeHostImplClient implementation | 68 // LayerTreeHostImplClient implementation |
69 virtual void DidLoseOutputSurfaceOnImplThread() OVERRIDE; | 69 virtual void DidLoseOutputSurfaceOnImplThread() OVERRIDE; |
70 virtual void OnSwapBuffersCompleteOnImplThread() OVERRIDE; | 70 virtual void OnSwapBuffersCompleteOnImplThread() OVERRIDE; |
71 virtual void BeginFrameOnImplThread(const BeginFrameArgs& args) OVERRIDE; | 71 virtual void BeginFrameOnImplThread(const BeginFrameArgs& args) OVERRIDE; |
| 72 virtual void DidBeginFrameDeadlineOnImplThread() OVERRIDE; |
72 virtual void OnCanDrawStateChanged(bool can_draw) OVERRIDE; | 73 virtual void OnCanDrawStateChanged(bool can_draw) OVERRIDE; |
73 virtual void NotifyReadyToActivate() OVERRIDE; | 74 virtual void NotifyReadyToActivate() OVERRIDE; |
74 virtual void SetNeedsRedrawOnImplThread() OVERRIDE; | 75 virtual void SetNeedsRedrawOnImplThread() OVERRIDE; |
75 virtual void SetNeedsRedrawRectOnImplThread(gfx::Rect dirty_rect) OVERRIDE; | 76 virtual void SetNeedsRedrawRectOnImplThread(gfx::Rect dirty_rect) OVERRIDE; |
76 virtual void DidInitializeVisibleTileOnImplThread() OVERRIDE; | 77 virtual void DidInitializeVisibleTileOnImplThread() OVERRIDE; |
77 virtual void SetNeedsCommitOnImplThread() OVERRIDE; | 78 virtual void SetNeedsCommitOnImplThread() OVERRIDE; |
78 virtual void PostAnimationEventsToMainThreadOnImplThread( | 79 virtual void PostAnimationEventsToMainThreadOnImplThread( |
79 scoped_ptr<AnimationEventsVector> queue, | 80 scoped_ptr<AnimationEventsVector> queue, |
80 base::Time wall_clock_time) OVERRIDE; | 81 base::Time wall_clock_time) OVERRIDE; |
81 virtual bool ReduceContentsTextureMemoryOnImplThread(size_t limit_bytes, | 82 virtual bool ReduceContentsTextureMemoryOnImplThread(size_t limit_bytes, |
(...skipping 16 matching lines...) Expand all Loading... |
98 virtual DrawSwapReadbackResult ScheduledActionDrawAndReadback() OVERRIDE; | 99 virtual DrawSwapReadbackResult ScheduledActionDrawAndReadback() OVERRIDE; |
99 virtual void ScheduledActionCommit() OVERRIDE; | 100 virtual void ScheduledActionCommit() OVERRIDE; |
100 virtual void ScheduledActionUpdateVisibleTiles() OVERRIDE; | 101 virtual void ScheduledActionUpdateVisibleTiles() OVERRIDE; |
101 virtual void ScheduledActionActivatePendingTree() OVERRIDE; | 102 virtual void ScheduledActionActivatePendingTree() OVERRIDE; |
102 virtual void ScheduledActionBeginOutputSurfaceCreation() OVERRIDE; | 103 virtual void ScheduledActionBeginOutputSurfaceCreation() OVERRIDE; |
103 virtual void ScheduledActionAcquireLayerTexturesForMainThread() OVERRIDE; | 104 virtual void ScheduledActionAcquireLayerTexturesForMainThread() OVERRIDE; |
104 virtual void DidAnticipatedDrawTimeChange(base::TimeTicks time) OVERRIDE; | 105 virtual void DidAnticipatedDrawTimeChange(base::TimeTicks time) OVERRIDE; |
105 virtual base::TimeDelta DrawDurationEstimate() OVERRIDE; | 106 virtual base::TimeDelta DrawDurationEstimate() OVERRIDE; |
106 virtual base::TimeDelta BeginFrameToCommitDurationEstimate() OVERRIDE; | 107 virtual base::TimeDelta BeginFrameToCommitDurationEstimate() OVERRIDE; |
107 virtual base::TimeDelta CommitToActivateDurationEstimate() OVERRIDE; | 108 virtual base::TimeDelta CommitToActivateDurationEstimate() OVERRIDE; |
| 109 virtual void PostBeginFrameDeadline(const base::Closure& closure, |
| 110 base::TimeTicks deadline) OVERRIDE; |
108 | 111 |
109 // ResourceUpdateControllerClient implementation | 112 // ResourceUpdateControllerClient implementation |
110 virtual void ReadyToFinalizeTextureUpdates() OVERRIDE; | 113 virtual void ReadyToFinalizeTextureUpdates() OVERRIDE; |
111 | 114 |
112 private: | 115 private: |
113 ThreadProxy(LayerTreeHost* layer_tree_host, | 116 ThreadProxy(LayerTreeHost* layer_tree_host, |
114 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner); | 117 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner); |
115 | 118 |
116 struct BeginFrameAndCommitState { | 119 struct BeginFrameAndCommitState { |
117 BeginFrameAndCommitState(); | 120 BeginFrameAndCommitState(); |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
208 scoped_ptr<OutputSurface> first_output_surface_; | 211 scoped_ptr<OutputSurface> first_output_surface_; |
209 | 212 |
210 base::WeakPtrFactory<ThreadProxy> weak_factory_on_impl_thread_; | 213 base::WeakPtrFactory<ThreadProxy> weak_factory_on_impl_thread_; |
211 | 214 |
212 base::WeakPtr<ThreadProxy> main_thread_weak_ptr_; | 215 base::WeakPtr<ThreadProxy> main_thread_weak_ptr_; |
213 base::WeakPtrFactory<ThreadProxy> weak_factory_; | 216 base::WeakPtrFactory<ThreadProxy> weak_factory_; |
214 | 217 |
215 scoped_ptr<LayerTreeHostImpl> layer_tree_host_impl_; | 218 scoped_ptr<LayerTreeHostImpl> layer_tree_host_impl_; |
216 | 219 |
217 scoped_ptr<Scheduler> scheduler_on_impl_thread_; | 220 scoped_ptr<Scheduler> scheduler_on_impl_thread_; |
| 221 bool frame_did_draw_; |
218 | 222 |
219 // Set when the main thread is waiting on a | 223 // Set when the main thread is waiting on a |
220 // ScheduledActionSendBeginFrameToMainThread to be issued. | 224 // ScheduledActionSendBeginFrameToMainThread to be issued. |
221 CompletionEvent* | 225 CompletionEvent* |
222 begin_frame_sent_to_main_thread_completion_event_on_impl_thread_; | 226 begin_frame_sent_to_main_thread_completion_event_on_impl_thread_; |
223 | 227 |
224 // Set when the main thread is waiting on a readback. | 228 // Set when the main thread is waiting on a readback. |
225 ReadbackRequest* readback_request_on_impl_thread_; | 229 ReadbackRequest* readback_request_on_impl_thread_; |
226 | 230 |
227 // Set when the main thread is waiting on a commit to complete. | 231 // Set when the main thread is waiting on a commit to complete. |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
264 // activation_duration_history_. | 268 // activation_duration_history_. |
265 base::TimeTicks begin_frame_sent_to_main_thread_time_; | 269 base::TimeTicks begin_frame_sent_to_main_thread_time_; |
266 base::TimeTicks commit_complete_time_; | 270 base::TimeTicks commit_complete_time_; |
267 | 271 |
268 DISALLOW_COPY_AND_ASSIGN(ThreadProxy); | 272 DISALLOW_COPY_AND_ASSIGN(ThreadProxy); |
269 }; | 273 }; |
270 | 274 |
271 } // namespace cc | 275 } // namespace cc |
272 | 276 |
273 #endif // CC_TREES_THREAD_PROXY_H_ | 277 #endif // CC_TREES_THREAD_PROXY_H_ |
OLD | NEW |