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

Unified Diff: cc/resources/managed_tile_state.h

Issue 16190002: cc: Add new RasterWorkerPool interface. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: rebase Created 7 years, 7 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
« no previous file with comments | « cc/resources/image_raster_worker_pool.cc ('k') | cc/resources/managed_tile_state.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/resources/managed_tile_state.h
diff --git a/cc/resources/managed_tile_state.h b/cc/resources/managed_tile_state.h
index 7d5eec7cdf764f4e3417fde4a763aad3c0f55ba4..51271eca00e114ade40456c1e5e13bf9d9500489 100644
--- a/cc/resources/managed_tile_state.h
+++ b/cc/resources/managed_tile_state.h
@@ -45,9 +45,9 @@ class CC_EXPORT ManagedTileState {
ResourceProvider::ResourceId get_resource_id() const {
DCHECK(mode_ == RESOURCE_MODE);
- DCHECK(resource_);
+ DCHECK(resource_id_);
DCHECK(memory_state_ == USING_RELEASABLE_MEMORY || forced_upload_);
- return resource_->id();
+ return resource_id_;
}
SkColor get_solid_color() const {
@@ -67,6 +67,11 @@ class CC_EXPORT ManagedTileState {
size_t GPUMemoryUsageInBytes() const;
+ void SetResourceForTesting(scoped_ptr<ResourcePool::Resource> resource) {
+ resource_ = resource.Pass();
+ resource_id_ = resource_->id();
+ }
+
scoped_ptr<ResourcePool::Resource>& GetResourceForTesting() {
return resource_;
}
@@ -90,16 +95,22 @@ class CC_EXPORT ManagedTileState {
mode_ = SOLID_COLOR_MODE;
solid_color_ = color;
memory_state_ = NOT_ALLOWED_TO_USE_MEMORY;
+ resource_id_ = 0;
}
void set_rasterize_on_demand() {
mode_ = PICTURE_PILE_MODE;
memory_state_ = NOT_ALLOWED_TO_USE_MEMORY;
+ resource_id_ = 0;
}
Mode mode_;
SkColor solid_color_;
+ // TODO(reveman): Eliminate the need for both |resource_id_|
+ // and |resource| by re-factoring the "force upload"
+ // mechanism. crbug.com/245767
+ ResourceProvider::ResourceId resource_id_;
scoped_ptr<ResourcePool::Resource> resource_;
GLenum resource_format_;
TileVersionMemoryState memory_state_;
@@ -116,7 +127,7 @@ class CC_EXPORT ManagedTileState {
TileVersion tile_version;
bool picture_pile_analyzed;
PicturePileImpl::Analysis picture_pile_analysis;
- RasterWorkerPool::Task raster_task;
+ RasterWorkerPool::RasterTask raster_task;
// Ephemeral state, valid only during TileManager::ManageTiles.
bool is_in_never_bin_on_both_trees() const {
« no previous file with comments | « cc/resources/image_raster_worker_pool.cc ('k') | cc/resources/managed_tile_state.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698