Chromium Code Reviews| Index: cc/resources/resource_pool.h |
| diff --git a/cc/resources/resource_pool.h b/cc/resources/resource_pool.h |
| index f79455905dd4513deb491b250a723b445c593d38..cf36463241058bf7ba9243ad0dd7e346e4b65796 100644 |
| --- a/cc/resources/resource_pool.h |
| +++ b/cc/resources/resource_pool.h |
| @@ -5,7 +5,7 @@ |
| #ifndef CC_RESOURCES_RESOURCE_POOL_H_ |
| #define CC_RESOURCES_RESOURCE_POOL_H_ |
| -#include <list> |
| +#include <deque> |
| #include "base/memory/scoped_ptr.h" |
| #include "cc/base/cc_export.h" |
| @@ -27,7 +27,12 @@ class CC_EXPORT ResourcePool { |
| scoped_ptr<ScopedResource> AcquireResource(const gfx::Size& size, |
| ResourceFormat format); |
| - void ReleaseResource(scoped_ptr<ScopedResource>); |
| + scoped_ptr<ScopedResource> TryAcquireResourceWithContentId( |
| + const gfx::Size& size, |
| + ResourceFormat format, |
| + uint64 content_id); |
|
reveman
2015/05/28 05:07:25
As we don't have two different versions of Release
danakj
2015/05/28 18:54:47
I don't think so. That would complicate the caller
|
| + void ReleaseResource(scoped_ptr<ScopedResource> resource, |
| + uint64_t content_id); |
| void SetResourceUsageLimits(size_t max_memory_usage_bytes, |
| size_t max_unused_memory_usage_bytes, |
| @@ -55,7 +60,7 @@ class CC_EXPORT ResourcePool { |
| bool ResourceUsageTooHigh(); |
| private: |
| - void DidFinishUsingResource(ScopedResource* resource); |
| + void DidFinishUsingResource(ScopedResource* resource, uint64_t content_id); |
| ResourceProvider* resource_provider_; |
| const GLenum target_; |
| @@ -66,7 +71,13 @@ class CC_EXPORT ResourcePool { |
| size_t unused_memory_usage_bytes_; |
| size_t resource_count_; |
| - typedef std::list<ScopedResource*> ResourceList; |
| + struct PoolResource { |
| + PoolResource(ScopedResource* resource, uint64_t content_id) |
| + : resource(resource), content_id(content_id) {} |
| + ScopedResource* resource; |
| + uint64_t content_id; |
| + }; |
| + typedef std::deque<PoolResource> ResourceList; |
|
reveman
2015/05/28 05:07:25
I would still prefer if this list -> deque change
danakj
2015/05/28 18:54:47
It seems I'm no longer using deque APIs in this CL
|
| ResourceList unused_resources_; |
| ResourceList busy_resources_; |