Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(177)

Side by Side Diff: cc/tiles/picture_layer_tiling.h

Issue 2555743004: Delay activation/draw on GPU tile work completion (Closed)
Patch Set: rebase compile fix Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/test/fake_raster_buffer_provider.cc ('k') | cc/tiles/tile_draw_info.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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_TILES_PICTURE_LAYER_TILING_H_ 5 #ifndef CC_TILES_PICTURE_LAYER_TILING_H_
6 #define CC_TILES_PICTURE_LAYER_TILING_H_ 6 #define CC_TILES_PICTURE_LAYER_TILING_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
238 const gfx::Rect& soon_border_rect_in_layer_space, 238 const gfx::Rect& soon_border_rect_in_layer_space,
239 const gfx::Rect& eventually_rect_in_layer_space, 239 const gfx::Rect& eventually_rect_in_layer_space,
240 float ideal_contents_scale, 240 float ideal_contents_scale,
241 const Occlusion& occlusion_in_layer_space); 241 const Occlusion& occlusion_in_layer_space);
242 242
243 void GetAllPrioritizedTilesForTracing( 243 void GetAllPrioritizedTilesForTracing(
244 std::vector<PrioritizedTile>* prioritized_tiles) const; 244 std::vector<PrioritizedTile>* prioritized_tiles) const;
245 void AsValueInto(base::trace_event::TracedValue* array) const; 245 void AsValueInto(base::trace_event::TracedValue* array) const;
246 size_t GPUMemoryUsageInBytes() const; 246 size_t GPUMemoryUsageInBytes() const;
247 247
248 void UpdateRequiredStatesOnTile(Tile* tile) const;
249
248 protected: 250 protected:
249 friend class CoverageIterator; 251 friend class CoverageIterator;
250 friend class PrioritizedTile; 252 friend class PrioritizedTile;
251 friend class TilingSetRasterQueueAll; 253 friend class TilingSetRasterQueueAll;
252 friend class TilingSetRasterQueueRequired; 254 friend class TilingSetRasterQueueRequired;
253 friend class TilingSetEvictionQueue; 255 friend class TilingSetEvictionQueue;
254 256
255 // PENDING VISIBLE RECT refers to the visible rect that will become current 257 // PENDING VISIBLE RECT refers to the visible rect that will become current
256 // upon activation (ie, the pending tree's visible rect). Tiles in this 258 // upon activation (ie, the pending tree's visible rect). Tiles in this
257 // region that are not part of the current visible rect are all handled 259 // region that are not part of the current visible rect are all handled
(...skipping 23 matching lines...) Expand all
281 const gfx::Rect& visible_rect_in_content_space, 283 const gfx::Rect& visible_rect_in_content_space,
282 const gfx::Rect& skewport, 284 const gfx::Rect& skewport,
283 const gfx::Rect& soon_border_rect, 285 const gfx::Rect& soon_border_rect,
284 const gfx::Rect& eventually_rect, 286 const gfx::Rect& eventually_rect,
285 const Occlusion& occlusion_in_layer_space); 287 const Occlusion& occlusion_in_layer_space);
286 288
287 bool IsTileOccludedOnCurrentTree(const Tile* tile) const; 289 bool IsTileOccludedOnCurrentTree(const Tile* tile) const;
288 Tile::CreateInfo CreateInfoForTile(int i, int j) const; 290 Tile::CreateInfo CreateInfoForTile(int i, int j) const;
289 bool ShouldCreateTileAt(const Tile::CreateInfo& info) const; 291 bool ShouldCreateTileAt(const Tile::CreateInfo& info) const;
290 bool IsTileOccluded(const Tile* tile) const; 292 bool IsTileOccluded(const Tile* tile) const;
291 void UpdateRequiredStatesOnTile(Tile* tile) const;
292 PrioritizedTile MakePrioritizedTile( 293 PrioritizedTile MakePrioritizedTile(
293 Tile* tile, 294 Tile* tile,
294 PriorityRectType priority_rect_type) const; 295 PriorityRectType priority_rect_type) const;
295 TilePriority ComputePriorityForTile( 296 TilePriority ComputePriorityForTile(
296 const Tile* tile, 297 const Tile* tile,
297 PriorityRectType priority_rect_type) const; 298 PriorityRectType priority_rect_type) const;
298 PriorityRectType ComputePriorityRectTypeForTile(const Tile* tile) const; 299 PriorityRectType ComputePriorityRectTypeForTile(const Tile* tile) const;
299 bool has_visible_rect_tiles() const { return has_visible_rect_tiles_; } 300 bool has_visible_rect_tiles() const { return has_visible_rect_tiles_; }
300 bool has_skewport_rect_tiles() const { return has_skewport_rect_tiles_; } 301 bool has_skewport_rect_tiles() const { return has_skewport_rect_tiles_; }
301 bool has_soon_border_rect_tiles() const { 302 bool has_soon_border_rect_tiles() const {
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
358 bool has_eventually_rect_tiles_ = false; 359 bool has_eventually_rect_tiles_ = false;
359 bool all_tiles_done_ = true; 360 bool all_tiles_done_ = true;
360 361
361 private: 362 private:
362 DISALLOW_COPY_AND_ASSIGN(PictureLayerTiling); 363 DISALLOW_COPY_AND_ASSIGN(PictureLayerTiling);
363 }; 364 };
364 365
365 } // namespace cc 366 } // namespace cc
366 367
367 #endif // CC_TILES_PICTURE_LAYER_TILING_H_ 368 #endif // CC_TILES_PICTURE_LAYER_TILING_H_
OLDNEW
« no previous file with comments | « cc/test/fake_raster_buffer_provider.cc ('k') | cc/tiles/tile_draw_info.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698