| Index: cc/resources/resource_provider.h
|
| diff --git a/cc/resources/resource_provider.h b/cc/resources/resource_provider.h
|
| index 2e2fecb47dd734c335b9cfe821eaedbccfe74bd1..5c69b0c2621329f40c233c62e1f8c311bb1ae8db 100644
|
| --- a/cc/resources/resource_provider.h
|
| +++ b/cc/resources/resource_provider.h
|
| @@ -36,6 +36,7 @@
|
| class GrContext;
|
|
|
| namespace gpu {
|
| +class GpuMemoryBufferManager;
|
| namespace gles {
|
| class GLES2Interface;
|
| }
|
| @@ -49,7 +50,6 @@ class Vector2d;
|
|
|
| namespace cc {
|
| class BlockingTaskRunner;
|
| -class GpuMemoryBufferManager;
|
| class IdAllocator;
|
| class SharedBitmap;
|
| class SharedBitmapManager;
|
| @@ -58,6 +58,9 @@ class TextureUploader;
|
| // This class is not thread-safe and can only be called from the thread it was
|
| // created on (in practice, the impl thread).
|
| class CC_EXPORT ResourceProvider {
|
| + private:
|
| + struct Resource;
|
| +
|
| public:
|
| typedef unsigned ResourceId;
|
| typedef std::vector<ResourceId> ResourceIdArray;
|
| @@ -79,7 +82,7 @@ class CC_EXPORT ResourceProvider {
|
| static scoped_ptr<ResourceProvider> Create(
|
| OutputSurface* output_surface,
|
| SharedBitmapManager* shared_bitmap_manager,
|
| - GpuMemoryBufferManager* gpu_memory_buffer_manager,
|
| + gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager,
|
| BlockingTaskRunner* blocking_main_thread_task_runner,
|
| int highp_threshold_min,
|
| bool use_rgba_4444_texture_format,
|
| @@ -258,7 +261,7 @@ class CC_EXPORT ResourceProvider {
|
|
|
| private:
|
| ResourceProvider* resource_provider_;
|
| - ResourceProvider::ResourceId resource_id_;
|
| + ResourceProvider::Resource* resource_;
|
| unsigned texture_id_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(ScopedWriteLockGL);
|
| @@ -298,7 +301,7 @@ class CC_EXPORT ResourceProvider {
|
|
|
| private:
|
| ResourceProvider* resource_provider_;
|
| - ResourceProvider::ResourceId resource_id_;
|
| + ResourceProvider::Resource* resource_;
|
| SkBitmap sk_bitmap_;
|
| scoped_ptr<SkCanvas> sk_canvas_;
|
|
|
| @@ -311,12 +314,15 @@ class CC_EXPORT ResourceProvider {
|
| ResourceProvider::ResourceId resource_id);
|
| ~ScopedWriteLockGpuMemoryBuffer();
|
|
|
| - gfx::GpuMemoryBuffer* gpu_memory_buffer() { return gpu_memory_buffer_; }
|
| + gfx::GpuMemoryBuffer* GetGpuMemoryBuffer();
|
|
|
| private:
|
| ResourceProvider* resource_provider_;
|
| - ResourceProvider::ResourceId resource_id_;
|
| + ResourceProvider::Resource* resource_;
|
| + gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager_;
|
| gfx::GpuMemoryBuffer* gpu_memory_buffer_;
|
| + gfx::Size size_;
|
| + ResourceFormat format_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(ScopedWriteLockGpuMemoryBuffer);
|
| };
|
| @@ -331,7 +337,7 @@ class CC_EXPORT ResourceProvider {
|
|
|
| private:
|
| ResourceProvider* resource_provider_;
|
| - ResourceProvider::ResourceId resource_id_;
|
| + ResourceProvider::Resource* resource_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(ScopedWriteLockGr);
|
| };
|
| @@ -482,7 +488,7 @@ class CC_EXPORT ResourceProvider {
|
|
|
| ResourceProvider(OutputSurface* output_surface,
|
| SharedBitmapManager* shared_bitmap_manager,
|
| - GpuMemoryBufferManager* gpu_memory_buffer_manager,
|
| + gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager,
|
| BlockingTaskRunner* blocking_main_thread_task_runner,
|
| int highp_threshold_min,
|
| bool use_rgba_4444_texture_format,
|
| @@ -493,12 +499,8 @@ class CC_EXPORT ResourceProvider {
|
| Resource* GetResource(ResourceId id);
|
| const Resource* LockForRead(ResourceId id);
|
| void UnlockForRead(ResourceId id);
|
| - const Resource* LockForWrite(ResourceId id);
|
| - void UnlockForWrite(ResourceId id);
|
| - const Resource* LockForWriteToGpuMemoryBuffer(ResourceId id);
|
| - void UnlockForWriteToGpuMemoryBuffer(ResourceId id);
|
| - void LockForWriteToSkSurface(ResourceId id);
|
| - void UnlockForWriteToSkSurface(ResourceId id);
|
| + Resource* LockForWrite(ResourceId id);
|
| + void UnlockForWrite(Resource* resource);
|
|
|
| static void PopulateSkBitmapWithResource(SkBitmap* sk_bitmap,
|
| const Resource* resource);
|
| @@ -530,7 +532,7 @@ class CC_EXPORT ResourceProvider {
|
|
|
| OutputSurface* output_surface_;
|
| SharedBitmapManager* shared_bitmap_manager_;
|
| - GpuMemoryBufferManager* gpu_memory_buffer_manager_;
|
| + gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager_;
|
| BlockingTaskRunner* blocking_main_thread_task_runner_;
|
| bool lost_output_surface_;
|
| int highp_threshold_min_;
|
|
|