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

Unified Diff: cc/resources/tile.h

Issue 366113002: cc: Do not cleanup tiles with raster tasks. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: use scopedvector for released tiles. Created 6 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: cc/resources/tile.h
diff --git a/cc/resources/tile.h b/cc/resources/tile.h
index 9aeabfa190ae9b85b7ab1f6f1e595a361d9d9c62..9bdd60926785d537f6b131c36b685db470f05b58 100644
--- a/cc/resources/tile.h
+++ b/cc/resources/tile.h
@@ -20,6 +20,9 @@ namespace cc {
class CC_EXPORT Tile : public RefCountedManaged<Tile> {
public:
+ // Needed by ScopedVector for deleting released tiles.
+ ~Tile();
reveman 2014/07/28 02:24:35 can you make ScopedVector<Tile> a friend class ins
sohanjg 2014/07/28 10:10:19 In ScopedVector, we would do the actual ptr deleti
danakj 2014/07/28 10:20:03 If u do want to use scopedvector can u use ScopedP
sohanjg 2014/07/28 11:34:50 Hmm..but tiles here are ref counted (RefCountedMan
danakj 2014/07/28 12:29:28 Er, okay, putting refcounted things in ScopedVecto
vmpstr 2014/07/28 15:23:14 Tile is weird this way. It's ref counted managed,
danakj 2014/07/28 15:27:13 Oh okay, that's super funky, thanks for the explan
reveman 2014/07/28 15:33:07 It would be nice if RefCountedManager::Release cou
vmpstr 2014/07/28 15:33:56 We can't really ref it again for a couple of reaso
sohanjg 2014/07/30 11:12:56 Lets add the Add/Release and track the reference c
+
enum TileRasterFlags { USE_PICTURE_ANALYSIS = 1 << 0 };
typedef uint64 Id;
@@ -168,12 +171,13 @@ class CC_EXPORT Tile : public RefCountedManaged<Tile> {
int layer_id,
int source_frame_number,
int flags);
- ~Tile();
ManagedTileState& managed_state() { return managed_state_; }
const ManagedTileState& managed_state() const { return managed_state_; }
RasterMode DetermineRasterModeForResolution(TileResolution resolution) const;
+ bool HasRasterTask() const;
+
TileManager* tile_manager_;
scoped_refptr<PicturePileImpl> picture_pile_;
gfx::Rect tile_size_;

Powered by Google App Engine
This is Rietveld 408576698