summaryrefslogtreecommitdiffstats
path: root/gpu/command_buffer/service/gpu_control_service.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gpu/command_buffer/service/gpu_control_service.cc')
-rw-r--r--gpu/command_buffer/service/gpu_control_service.cc19
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