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 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
160 void ForceCommitForReadbackOnImplThread( | 160 void ForceCommitForReadbackOnImplThread( |
161 CompletionEvent* begin_main_frame_sent_completion, | 161 CompletionEvent* begin_main_frame_sent_completion, |
162 ReadbackRequest* request); | 162 ReadbackRequest* request); |
163 void StartCommitOnImplThread( | 163 void StartCommitOnImplThread( |
164 CompletionEvent* completion, | 164 CompletionEvent* completion, |
165 ResourceUpdateQueue* queue, | 165 ResourceUpdateQueue* queue, |
166 scoped_refptr<ContextProvider> offscreen_context_provider); | 166 scoped_refptr<ContextProvider> offscreen_context_provider); |
167 void BeginMainFrameAbortedOnImplThread(bool did_handle); | 167 void BeginMainFrameAbortedOnImplThread(bool did_handle); |
168 void RequestReadbackOnImplThread(ReadbackRequest* request); | 168 void RequestReadbackOnImplThread(ReadbackRequest* request); |
169 void FinishAllRenderingOnImplThread(CompletionEvent* completion); | 169 void FinishAllRenderingOnImplThread(CompletionEvent* completion); |
170 void InitializeImplOnImplThread(CompletionEvent* completion, | 170 void InitializeImplOnImplThread(CompletionEvent* completion); |
171 int layer_tree_host_id); | |
172 void SetLayerTreeHostClientReadyOnImplThread(); | 171 void SetLayerTreeHostClientReadyOnImplThread(); |
173 void SetVisibleOnImplThread(CompletionEvent* completion, bool visible); | 172 void SetVisibleOnImplThread(CompletionEvent* completion, bool visible); |
174 void UpdateBackgroundAnimateTicking(); | 173 void UpdateBackgroundAnimateTicking(); |
175 void HasInitializedOutputSurfaceOnImplThread( | 174 void HasInitializedOutputSurfaceOnImplThread( |
176 CompletionEvent* completion, | 175 CompletionEvent* completion, |
177 bool* has_initialized_output_surface); | 176 bool* has_initialized_output_surface); |
178 void InitializeOutputSurfaceOnImplThread( | 177 void InitializeOutputSurfaceOnImplThread( |
179 CompletionEvent* completion, | 178 CompletionEvent* completion, |
180 scoped_ptr<OutputSurface> output_surface, | 179 scoped_ptr<OutputSurface> output_surface, |
181 scoped_refptr<ContextProvider> offscreen_context_provider, | 180 scoped_refptr<ContextProvider> offscreen_context_provider, |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
246 LayerTreeHost* layer_tree_host; | 245 LayerTreeHost* layer_tree_host; |
247 bool commit_waits_for_activation; | 246 bool commit_waits_for_activation; |
248 bool main_thread_inside_commit; | 247 bool main_thread_inside_commit; |
249 }; | 248 }; |
250 // Use accessors instead of this variable directly. | 249 // Use accessors instead of this variable directly. |
251 MainThreadOrBlockedMainThread main_thread_or_blocked_vars_unsafe_; | 250 MainThreadOrBlockedMainThread main_thread_or_blocked_vars_unsafe_; |
252 MainThreadOrBlockedMainThread& blocked_main(); | 251 MainThreadOrBlockedMainThread& blocked_main(); |
253 const MainThreadOrBlockedMainThread& blocked_main() const; | 252 const MainThreadOrBlockedMainThread& blocked_main() const; |
254 | 253 |
255 struct CompositorThreadOnly { | 254 struct CompositorThreadOnly { |
256 explicit CompositorThreadOnly(ThreadProxy* proxy); | 255 CompositorThreadOnly(ThreadProxy* proxy, int layer_tree_host_id); |
257 ~CompositorThreadOnly(); | 256 ~CompositorThreadOnly(); |
258 | 257 |
| 258 const int layer_tree_host_id; |
| 259 |
259 // Copy of the main thread side contents texture manager for work | 260 // Copy of the main thread side contents texture manager for work |
260 // that needs to be done on the compositor thread. | 261 // that needs to be done on the compositor thread. |
261 PrioritizedResourceManager* contents_texture_manager; | 262 PrioritizedResourceManager* contents_texture_manager; |
262 | 263 |
263 scoped_ptr<Scheduler> scheduler; | 264 scoped_ptr<Scheduler> scheduler; |
264 | 265 |
265 // Set when the main thread is waiting on a | 266 // Set when the main thread is waiting on a |
266 // ScheduledActionSendBeginMainFrame to be issued. | 267 // ScheduledActionSendBeginMainFrame to be issued. |
267 CompletionEvent* begin_main_frame_sent_completion_event; | 268 CompletionEvent* begin_main_frame_sent_completion_event; |
268 | 269 |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
311 | 312 |
312 base::WeakPtr<ThreadProxy> main_thread_weak_ptr_; | 313 base::WeakPtr<ThreadProxy> main_thread_weak_ptr_; |
313 base::WeakPtr<ThreadProxy> impl_thread_weak_ptr_; | 314 base::WeakPtr<ThreadProxy> impl_thread_weak_ptr_; |
314 | 315 |
315 DISALLOW_COPY_AND_ASSIGN(ThreadProxy); | 316 DISALLOW_COPY_AND_ASSIGN(ThreadProxy); |
316 }; | 317 }; |
317 | 318 |
318 } // namespace cc | 319 } // namespace cc |
319 | 320 |
320 #endif // CC_TREES_THREAD_PROXY_H_ | 321 #endif // CC_TREES_THREAD_PROXY_H_ |
OLD | NEW |