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 246 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
257 // Provides delegated frame updates to the cc::DelegatedRendererLayer. | 257 // Provides delegated frame updates to the cc::DelegatedRendererLayer. |
258 scoped_refptr<cc::DelegatedFrameProvider> frame_provider_; | 258 scoped_refptr<cc::DelegatedFrameProvider> frame_provider_; |
259 | 259 |
260 // State for rendering into a Surface. | 260 // State for rendering into a Surface. |
261 scoped_ptr<cc::SurfaceIdAllocator> id_allocator_; | 261 scoped_ptr<cc::SurfaceIdAllocator> id_allocator_; |
262 scoped_ptr<cc::SurfaceFactory> surface_factory_; | 262 scoped_ptr<cc::SurfaceFactory> surface_factory_; |
263 cc::SurfaceId surface_id_; | 263 cc::SurfaceId surface_id_; |
264 gfx::Size current_surface_size_; | 264 gfx::Size current_surface_size_; |
265 cc::ReturnedResourceArray surface_returned_resources_; | 265 cc::ReturnedResourceArray surface_returned_resources_; |
266 | 266 |
| 267 // These Surfaces will be destroyed after the compositor commits and draws |
| 268 // its next frame. |
| 269 std::vector<cc::SurfaceId> surfaces_to_destroy_after_commit_; |
| 270 |
| 271 // These Surfaces will be destroyed after the compositor draws its next |
| 272 // frame. |
| 273 std::vector<cc::SurfaceId> surfaces_to_destroy_after_swap_; |
| 274 |
267 // This lock is the one waiting for a frame of the right size to come back | 275 // This lock is the one waiting for a frame of the right size to come back |
268 // from the renderer/GPU process. It is set from the moment the aura window | 276 // from the renderer/GPU process. It is set from the moment the aura window |
269 // got resized, to the moment we committed the renderer frame of the same | 277 // got resized, to the moment we committed the renderer frame of the same |
270 // size. It keeps track of the size we expect from the renderer, and locks the | 278 // size. It keeps track of the size we expect from the renderer, and locks the |
271 // compositor, as well as the UI for a short time to give a chance to the | 279 // compositor, as well as the UI for a short time to give a chance to the |
272 // renderer of producing a frame of the right size. | 280 // renderer of producing a frame of the right size. |
273 scoped_ptr<ResizeLock> resize_lock_; | 281 scoped_ptr<ResizeLock> resize_lock_; |
274 | 282 |
275 // Keeps track of the current frame size. | 283 // Keeps track of the current frame size. |
276 gfx::Size current_frame_size_in_dip_; | 284 gfx::Size current_frame_size_in_dip_; |
(...skipping 21 matching lines...) Expand all Loading... |
298 // YUV readback pipeline. | 306 // YUV readback pipeline. |
299 scoped_ptr<content::ReadbackYUVInterface> | 307 scoped_ptr<content::ReadbackYUVInterface> |
300 yuv_readback_pipeline_; | 308 yuv_readback_pipeline_; |
301 | 309 |
302 scoped_ptr<DelegatedFrameEvictor> delegated_frame_evictor_; | 310 scoped_ptr<DelegatedFrameEvictor> delegated_frame_evictor_; |
303 }; | 311 }; |
304 | 312 |
305 } // namespace content | 313 } // namespace content |
306 | 314 |
307 #endif // CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ | 315 #endif // CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ |
OLD | NEW |