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_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ | 5 #ifndef CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ |
6 #define CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ | 6 #define CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ |
7 | 7 |
8 #include "cc/layers/delegated_frame_provider.h" | 8 #include "cc/layers/delegated_frame_provider.h" |
9 #include "cc/layers/delegated_frame_resource_collection.h" | 9 #include "cc/layers/delegated_frame_resource_collection.h" |
10 #include "cc/output/copy_output_result.h" | 10 #include "cc/output/copy_output_result.h" |
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
265 // Provides delegated frame updates to the cc::DelegatedRendererLayer. | 265 // Provides delegated frame updates to the cc::DelegatedRendererLayer. |
266 scoped_refptr<cc::DelegatedFrameProvider> frame_provider_; | 266 scoped_refptr<cc::DelegatedFrameProvider> frame_provider_; |
267 | 267 |
268 // State for rendering into a Surface. | 268 // State for rendering into a Surface. |
269 scoped_ptr<cc::SurfaceIdAllocator> id_allocator_; | 269 scoped_ptr<cc::SurfaceIdAllocator> id_allocator_; |
270 scoped_ptr<cc::SurfaceFactory> surface_factory_; | 270 scoped_ptr<cc::SurfaceFactory> surface_factory_; |
271 cc::SurfaceId surface_id_; | 271 cc::SurfaceId surface_id_; |
272 gfx::Size current_surface_size_; | 272 gfx::Size current_surface_size_; |
273 cc::ReturnedResourceArray surface_returned_resources_; | 273 cc::ReturnedResourceArray surface_returned_resources_; |
274 | 274 |
| 275 std::vector<cc::SurfaceId> surfaces_to_destroy_after_commit_; |
| 276 std::vector<cc::SurfaceId> surfaces_to_destroy_after_swap_; |
| 277 |
275 // This lock is the one waiting for a frame of the right size to come back | 278 // This lock is the one waiting for a frame of the right size to come back |
276 // from the renderer/GPU process. It is set from the moment the aura window | 279 // from the renderer/GPU process. It is set from the moment the aura window |
277 // got resized, to the moment we committed the renderer frame of the same | 280 // got resized, to the moment we committed the renderer frame of the same |
278 // size. It keeps track of the size we expect from the renderer, and locks the | 281 // size. It keeps track of the size we expect from the renderer, and locks the |
279 // compositor, as well as the UI for a short time to give a chance to the | 282 // compositor, as well as the UI for a short time to give a chance to the |
280 // renderer of producing a frame of the right size. | 283 // renderer of producing a frame of the right size. |
281 scoped_ptr<ResizeLock> resize_lock_; | 284 scoped_ptr<ResizeLock> resize_lock_; |
282 | 285 |
283 // Keeps track of the current frame size. | 286 // Keeps track of the current frame size. |
284 gfx::Size current_frame_size_in_dip_; | 287 gfx::Size current_frame_size_in_dip_; |
(...skipping 21 matching lines...) Expand all Loading... |
306 // YUV readback pipeline. | 309 // YUV readback pipeline. |
307 scoped_ptr<content::ReadbackYUVInterface> | 310 scoped_ptr<content::ReadbackYUVInterface> |
308 yuv_readback_pipeline_; | 311 yuv_readback_pipeline_; |
309 | 312 |
310 scoped_ptr<DelegatedFrameEvictor> delegated_frame_evictor_; | 313 scoped_ptr<DelegatedFrameEvictor> delegated_frame_evictor_; |
311 }; | 314 }; |
312 | 315 |
313 } // namespace content | 316 } // namespace content |
314 | 317 |
315 #endif // CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ | 318 #endif // CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ |
OLD | NEW |