| Index: cc/raster/one_copy_tile_task_worker_pool.h
|
| diff --git a/cc/raster/one_copy_tile_task_worker_pool.h b/cc/raster/one_copy_tile_task_worker_pool.h
|
| index 783d103c850ac1f44c008591ee8a7bbc44b50c65..3b02bae062a544a1fa99e7e1fd3c91c4aa7da21b 100644
|
| --- a/cc/raster/one_copy_tile_task_worker_pool.h
|
| +++ b/cc/raster/one_copy_tile_task_worker_pool.h
|
| @@ -49,7 +49,8 @@ class CC_EXPORT OneCopyTileTaskWorkerPool
|
| ResourceProvider* resource_provider,
|
| int max_copy_texture_chromium_size,
|
| bool use_persistent_gpu_memory_buffers,
|
| - int max_staging_buffer_usage_in_bytes);
|
| + int max_staging_buffer_usage_in_bytes,
|
| + bool use_rgba_4444_texture_format);
|
|
|
| // Overridden from TileTaskWorkerPool:
|
| TileTaskRunner* AsTileTaskRunner() override;
|
| @@ -59,8 +60,8 @@ class CC_EXPORT OneCopyTileTaskWorkerPool
|
| void Shutdown() override;
|
| void ScheduleTasks(TileTaskQueue* queue) override;
|
| void CheckForCompletedTasks() override;
|
| - ResourceFormat GetResourceFormat() const override;
|
| - bool GetResourceRequiresSwizzle() const override;
|
| + ResourceFormat GetResourceFormat(bool must_support_alpha) const override;
|
| + bool GetResourceRequiresSwizzle(bool must_support_alpha) const override;
|
|
|
| // Overridden from TileTaskClient:
|
| scoped_ptr<RasterBuffer> AcquireBufferForRaster(
|
| @@ -91,11 +92,12 @@ class CC_EXPORT OneCopyTileTaskWorkerPool
|
| ResourceProvider* resource_provider,
|
| int max_copy_texture_chromium_size,
|
| bool use_persistent_gpu_memory_buffers,
|
| - int max_staging_buffer_usage_in_bytes);
|
| + int max_staging_buffer_usage_in_bytes,
|
| + bool use_rgba_4444_texture_format);
|
|
|
| private:
|
| struct StagingBuffer {
|
| - explicit StagingBuffer(const gfx::Size& size);
|
| + StagingBuffer(const gfx::Size& size, ResourceFormat format);
|
| ~StagingBuffer();
|
|
|
| void DestroyGLResources(gpu::gles2::GLES2Interface* gl);
|
| @@ -104,6 +106,7 @@ class CC_EXPORT OneCopyTileTaskWorkerPool
|
| bool is_free) const;
|
|
|
| const gfx::Size size;
|
| + const ResourceFormat format;
|
| scoped_ptr<gfx::GpuMemoryBuffer> gpu_memory_buffer;
|
| base::TimeTicks last_usage;
|
| unsigned texture_id;
|
| @@ -112,7 +115,8 @@ class CC_EXPORT OneCopyTileTaskWorkerPool
|
| uint64_t content_id;
|
| };
|
|
|
| - void AddStagingBuffer(const StagingBuffer* staging_buffer);
|
| + void AddStagingBuffer(const StagingBuffer* staging_buffer,
|
| + ResourceFormat format);
|
| void RemoveStagingBuffer(const StagingBuffer* staging_buffer);
|
| void MarkStagingBufferAsFree(const StagingBuffer* staging_buffer);
|
| void MarkStagingBufferAsBusy(const StagingBuffer* staging_buffer);
|
| @@ -153,6 +157,7 @@ class CC_EXPORT OneCopyTileTaskWorkerPool
|
| StagingBufferDeque busy_buffers_;
|
| int bytes_scheduled_since_last_flush_;
|
| const int max_staging_buffer_usage_in_bytes_;
|
| + bool use_rgba_4444_texture_format_;
|
| int staging_buffer_usage_in_bytes_;
|
| int free_staging_buffer_usage_in_bytes_;
|
| const base::TimeDelta staging_buffer_expiration_delay_;
|
|
|