Index: media/renderers/mock_gpu_video_accelerator_factories.cc |
diff --git a/media/renderers/mock_gpu_video_accelerator_factories.cc b/media/renderers/mock_gpu_video_accelerator_factories.cc |
index c9f7824424cd6889cec388aa93d45f78d761b660..a7d3f5d8c9a21b5dcdea92d488600519f567c6d8 100644 |
--- a/media/renderers/mock_gpu_video_accelerator_factories.cc |
+++ b/media/renderers/mock_gpu_video_accelerator_factories.cc |
@@ -4,12 +4,62 @@ |
#include "media/renderers/mock_gpu_video_accelerator_factories.h" |
+#include "ui/gfx/gpu_memory_buffer.h" |
+ |
namespace media { |
+namespace { |
+ |
+class GpuMemoryBufferImpl : public gfx::GpuMemoryBuffer { |
+ public: |
+ GpuMemoryBufferImpl(const gfx::Size& size, |
+ gfx::GpuMemoryBuffer::Format format) |
+ : size_(size), format_(format) { |
+ DCHECK_EQ(gfx::GpuMemoryBuffer::R_8, format); |
reveman
2015/05/12 03:20:24
nit: move this to AllocateGpuMemoryBuffer and remo
Daniele Castagna
2015/05/12 21:21:29
Done.
|
+ bytes_.resize(size_.GetArea()); |
+ } |
+ |
+ // Overridden from gfx::GpuMemoryBuffer: |
+ bool Map(void** data) override { |
+ data[0] = &bytes_[0]; |
+ return true; |
+ } |
+ void Unmap() override{}; |
+ bool IsMapped() const override { |
+ NOTREACHED(); |
+ return false; |
+ } |
+ Format GetFormat() const override { return format_; } |
+ void GetStride(int* stride) const override { stride[0] = size_.width(); } |
+ gfx::GpuMemoryBufferHandle GetHandle() const override { |
+ NOTREACHED(); |
+ return gfx::GpuMemoryBufferHandle(); |
+ } |
+ ClientBuffer AsClientBuffer() override { |
+ return reinterpret_cast<ClientBuffer>(this); |
+ } |
+ |
+ private: |
+ std::vector<unsigned char> bytes_; |
+ const gfx::Size size_; |
+ gfx::GpuMemoryBuffer::Format format_; |
+}; |
+ |
+} // unnamed namespace |
+ |
MockGpuVideoAcceleratorFactories::MockGpuVideoAcceleratorFactories() {} |
MockGpuVideoAcceleratorFactories::~MockGpuVideoAcceleratorFactories() {} |
+scoped_ptr<gfx::GpuMemoryBuffer> |
+MockGpuVideoAcceleratorFactories::AllocateGpuMemoryBuffer( |
+ const gfx::Size& size, |
+ gfx::GpuMemoryBuffer::Format format, |
+ gfx::GpuMemoryBuffer::Usage usage) { |
+ return make_scoped_ptr<gfx::GpuMemoryBuffer>( |
+ new GpuMemoryBufferImpl(size, format)); |
+} |
+ |
scoped_ptr<base::SharedMemory> |
MockGpuVideoAcceleratorFactories::CreateSharedMemory(size_t size) { |
return nullptr; |