| 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 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 215 // DelegatedFrameEvictorClient implementation. | 215 // DelegatedFrameEvictorClient implementation. |
| 216 virtual void EvictDelegatedFrame() OVERRIDE; | 216 virtual void EvictDelegatedFrame() OVERRIDE; |
| 217 | 217 |
| 218 // cc::DelegatedFrameProviderClient implementation. | 218 // cc::DelegatedFrameProviderClient implementation. |
| 219 virtual void UnusedResourcesAreAvailable() OVERRIDE; | 219 virtual void UnusedResourcesAreAvailable() OVERRIDE; |
| 220 | 220 |
| 221 // cc::SurfaceFactoryClient implementation. | 221 // cc::SurfaceFactoryClient implementation. |
| 222 virtual void ReturnResources( | 222 virtual void ReturnResources( |
| 223 const cc::ReturnedResourceArray& resources) OVERRIDE; | 223 const cc::ReturnedResourceArray& resources) OVERRIDE; |
| 224 | 224 |
| 225 void DidReceiveFrameFromRenderer(); | 225 void DidReceiveFrameFromRenderer(const gfx::Rect& damage_rect); |
| 226 | 226 |
| 227 DelegatedFrameHostClient* client_; | 227 DelegatedFrameHostClient* client_; |
| 228 | 228 |
| 229 // True if this renders into a Surface, false if it renders into a delegated | 229 // True if this renders into a Surface, false if it renders into a delegated |
| 230 // layer. | 230 // layer. |
| 231 bool use_surfaces_; | 231 bool use_surfaces_; |
| 232 | 232 |
| 233 std::vector<base::Closure> on_compositing_did_commit_callbacks_; | 233 std::vector<base::Closure> on_compositing_did_commit_callbacks_; |
| 234 | 234 |
| 235 // The vsync manager we are observing for changes, if any. | 235 // The vsync manager we are observing for changes, if any. |
| 236 scoped_refptr<ui::CompositorVSyncManager> vsync_manager_; | 236 scoped_refptr<ui::CompositorVSyncManager> vsync_manager_; |
| 237 | 237 |
| 238 // The current VSync timebase and interval. These are zero until the first |
| 239 // call to OnUpdateVSyncParameters(). |
| 240 base::TimeTicks vsync_timebase_; |
| 241 base::TimeDelta vsync_interval_; |
| 242 |
| 238 // With delegated renderer, this is the last output surface, used to | 243 // With delegated renderer, this is the last output surface, used to |
| 239 // disambiguate resources with the same id coming from different output | 244 // disambiguate resources with the same id coming from different output |
| 240 // surfaces. | 245 // surfaces. |
| 241 uint32 last_output_surface_id_; | 246 uint32 last_output_surface_id_; |
| 242 | 247 |
| 243 // The number of delegated frame acks that are pending, to delay resource | 248 // The number of delegated frame acks that are pending, to delay resource |
| 244 // returns until the acks are sent. | 249 // returns until the acks are sent. |
| 245 int pending_delegated_ack_count_; | 250 int pending_delegated_ack_count_; |
| 246 | 251 |
| 247 // True after a delegated frame has been skipped, until a frame is not | 252 // True after a delegated frame has been skipped, until a frame is not |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 298 // YUV readback pipeline. | 303 // YUV readback pipeline. |
| 299 scoped_ptr<content::ReadbackYUVInterface> | 304 scoped_ptr<content::ReadbackYUVInterface> |
| 300 yuv_readback_pipeline_; | 305 yuv_readback_pipeline_; |
| 301 | 306 |
| 302 scoped_ptr<DelegatedFrameEvictor> delegated_frame_evictor_; | 307 scoped_ptr<DelegatedFrameEvictor> delegated_frame_evictor_; |
| 303 }; | 308 }; |
| 304 | 309 |
| 305 } // namespace content | 310 } // namespace content |
| 306 | 311 |
| 307 #endif // CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ | 312 #endif // CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ |
| OLD | NEW |