diff options
Diffstat (limited to 'gpu/command_buffer/service/gpu_control_service.cc')
-rw-r--r-- | gpu/command_buffer/service/gpu_control_service.cc | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/gpu/command_buffer/service/gpu_control_service.cc b/gpu/command_buffer/service/gpu_control_service.cc index 64ea261..2a34b8c 100644 --- a/gpu/command_buffer/service/gpu_control_service.cc +++ b/gpu/command_buffer/service/gpu_control_service.cc @@ -6,14 +6,17 @@ #include "gpu/command_buffer/client/gpu_memory_buffer_factory.h" #include "gpu/command_buffer/service/gpu_memory_buffer_manager.h" +#include "gpu/command_buffer/service/mailbox_manager.h" namespace gpu { GpuControlService::GpuControlService( GpuMemoryBufferManagerInterface* gpu_memory_buffer_manager, - GpuMemoryBufferFactory* gpu_memory_buffer_factory) + GpuMemoryBufferFactory* gpu_memory_buffer_factory, + gles2::MailboxManager* mailbox_manager) : gpu_memory_buffer_manager_(gpu_memory_buffer_manager), - gpu_memory_buffer_factory_(gpu_memory_buffer_factory) { + gpu_memory_buffer_factory_(gpu_memory_buffer_factory), + mailbox_manager_(mailbox_manager) { } GpuControlService::~GpuControlService() { @@ -75,4 +78,16 @@ bool GpuControlService::RegisterGpuMemoryBuffer( internalformat); } +bool GpuControlService::GenerateMailboxNames( + unsigned num, std::vector<gpu::Mailbox>* names) { + DCHECK(names->empty()); + names->resize(num); + for (unsigned i = 0; i < num; ++i) { + gles2::MailboxName name; + mailbox_manager_->GenerateMailboxName(&name); + (*names)[i].SetName(name.key); + } + return true; +} + } // namespace gpu |