Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(234)

Side by Side Diff: gpu/command_buffer/client/gpu_memory_buffer_factory.cc

Issue 14456004: GPU client side changes for GpuMemoryBuffers (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@glapi
Patch Set: Implement DeleteImageBuffersHelper and remove unused GetNativeBufferForGpuMemoryBuffer Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "gpu/command_buffer/client/gpu_memory_buffer_factory.h" 5 #include "gpu/command_buffer/client/gpu_memory_buffer_factory.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "gpu/command_buffer/common/image_buffer_manager.h"
8 9
9 namespace gpu { 10 namespace gpu {
11 namespace gles2 {
10 12
11 namespace { 13 namespace {
12 GpuMemoryBuffer::Creator* g_gpu_memory_buffer_factory_ = NULL; 14 GpuMemoryBuffer::Creator* g_gpu_memory_buffer_factory_ = NULL;
13 } 15 }
14 16
15 const GpuMemoryBuffer::Creator& GetProcessDefaultGpuMemoryBufferFactory() { 17 const GpuMemoryBuffer::Creator& GetProcessDefaultGpuMemoryBufferFactory() {
16 return *g_gpu_memory_buffer_factory_; 18 return *g_gpu_memory_buffer_factory_;
17 } 19 }
18 20
19 void SetProcessDefaultGpuMemoryBufferFactory( 21 void SetProcessDefaultGpuMemoryBufferFactory(
20 const GpuMemoryBuffer::Creator& factory) { 22 const GpuMemoryBuffer::Creator& factory) {
21 DCHECK(g_gpu_memory_buffer_factory_ == NULL); 23 DCHECK(g_gpu_memory_buffer_factory_ == NULL);
22 g_gpu_memory_buffer_factory_ = new GpuMemoryBuffer::Creator(factory); 24 g_gpu_memory_buffer_factory_ = new GpuMemoryBuffer::Creator(factory);
23 } 25 }
24 26
27 GpuMemoryBufferFactory::GpuMemoryBufferFactory(ImageManagerProxy* manager)
28 : image_manager_proxy_(manager) {
29 }
30
31 GpuMemoryBufferFactory::~GpuMemoryBufferFactory() {
32 }
33
34 scoped_ptr<GpuMemoryBuffer> GpuMemoryBufferFactory::CreateGpuMemoryBuffer(
joth 2013/05/03 00:49:37 // creates a GpuMemoryBuffer and makes it availabl
35 int width, int height, int image_id) {
36 scoped_ptr<GpuMemoryBuffer> buffer =
37 GetProcessDefaultGpuMemoryBufferFactory().Run(width, height);
38
39 image_manager_proxy_->AddImageBuffer(buffer->GetNativeBuffer(), image_id,
40 width, height);
41 return buffer.Pass();
42 }
43
44 } // namespace gles2
25 } // namespace gpu 45 } // namespace gpu
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698