| Index: content/common/gpu/client/gpu_memory_buffer_impl.h
|
| diff --git a/content/common/gpu/client/gpu_memory_buffer_impl.h b/content/common/gpu/client/gpu_memory_buffer_impl.h
|
| index ee85f0f7b57ee02d73e5bca5e74ab26cf8cf77c6..42bde653a0bd492c2e4f618eda0aa6517ddcb6bd 100644
|
| --- a/content/common/gpu/client/gpu_memory_buffer_impl.h
|
| +++ b/content/common/gpu/client/gpu_memory_buffer_impl.h
|
| @@ -14,14 +14,32 @@ namespace content {
|
| // Provides common implementation of a GPU memory buffer.
|
| class GpuMemoryBufferImpl : public gfx::GpuMemoryBuffer {
|
| public:
|
| - static scoped_ptr<GpuMemoryBufferImpl> Create(
|
| + virtual ~GpuMemoryBufferImpl();
|
| +
|
| + // Creates a GPU memory buffer instance with |size| and |internalformat|.
|
| + static scoped_ptr<GpuMemoryBufferImpl> Create(const gfx::Size& size,
|
| + unsigned internalformat);
|
| +
|
| + // Allocates a GPU memory buffer with |size| and |internalformat| for use by
|
| + // |child_process|. The |handle| returned can be used by the |child_process|
|
| + // to create an instance of this class.
|
| + static void AllocateForChildProcess(const gfx::Size& size,
|
| + unsigned internalformat,
|
| + base::ProcessHandle child_process,
|
| + gfx::GpuMemoryBufferHandle* handle);
|
| +
|
| + // Creates an instance from the given |handle|. |size| and |internalformat|
|
| + // should match what was used to allocate the |handle|.
|
| + static scoped_ptr<GpuMemoryBufferImpl> CreateFromHandle(
|
| gfx::GpuMemoryBufferHandle handle,
|
| - gfx::Size size,
|
| + const gfx::Size& size,
|
| unsigned internalformat);
|
|
|
| - virtual ~GpuMemoryBufferImpl();
|
| -
|
| + // Returns true if |internalformat| is a format recognized by this base class.
|
| static bool IsFormatValid(unsigned internalformat);
|
| +
|
| + // Returns the number of bytes per pixel that must be used by an
|
| + // implementation when using |internalformat|.
|
| static size_t BytesPerPixel(unsigned internalformat);
|
|
|
| // Overridden from gfx::GpuMemoryBuffer:
|
| @@ -29,10 +47,10 @@ class GpuMemoryBufferImpl : public gfx::GpuMemoryBuffer {
|
| virtual uint32 GetStride() const OVERRIDE;
|
|
|
| protected:
|
| - GpuMemoryBufferImpl(gfx::Size size, unsigned internalformat);
|
| + GpuMemoryBufferImpl(const gfx::Size& size, unsigned internalformat);
|
|
|
| const gfx::Size size_;
|
| - unsigned internalformat_;
|
| + const unsigned internalformat_;
|
| bool mapped_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(GpuMemoryBufferImpl);
|
|
|