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

Side by Side Diff: content/common/gpu/gpu_channel_manager.cc

Issue 1129943006: Implement StreamTexture::BindTexImage. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 5 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "content/common/gpu/gpu_channel_manager.h" 5 #include "content/common/gpu/gpu_channel_manager.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/location.h" 9 #include "base/location.h"
10 #include "base/single_thread_task_runner.h" 10 #include "base/single_thread_task_runner.h"
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 return iter->second; 110 return iter->second;
111 } 111 }
112 112
113 bool GpuChannelManager::OnMessageReceived(const IPC::Message& msg) { 113 bool GpuChannelManager::OnMessageReceived(const IPC::Message& msg) {
114 bool handled = true; 114 bool handled = true;
115 IPC_BEGIN_MESSAGE_MAP(GpuChannelManager, msg) 115 IPC_BEGIN_MESSAGE_MAP(GpuChannelManager, msg)
116 IPC_MESSAGE_HANDLER(GpuMsg_EstablishChannel, OnEstablishChannel) 116 IPC_MESSAGE_HANDLER(GpuMsg_EstablishChannel, OnEstablishChannel)
117 IPC_MESSAGE_HANDLER(GpuMsg_CloseChannel, OnCloseChannel) 117 IPC_MESSAGE_HANDLER(GpuMsg_CloseChannel, OnCloseChannel)
118 IPC_MESSAGE_HANDLER(GpuMsg_CreateViewCommandBuffer, 118 IPC_MESSAGE_HANDLER(GpuMsg_CreateViewCommandBuffer,
119 OnCreateViewCommandBuffer) 119 OnCreateViewCommandBuffer)
120 IPC_MESSAGE_HANDLER(GpuMsg_CreateStreamTexture, OnCreateStreamTexture)
120 IPC_MESSAGE_HANDLER(GpuMsg_DestroyGpuMemoryBuffer, OnDestroyGpuMemoryBuffer) 121 IPC_MESSAGE_HANDLER(GpuMsg_DestroyGpuMemoryBuffer, OnDestroyGpuMemoryBuffer)
121 IPC_MESSAGE_HANDLER(GpuMsg_LoadedShader, OnLoadedShader) 122 IPC_MESSAGE_HANDLER(GpuMsg_LoadedShader, OnLoadedShader)
122 IPC_MESSAGE_HANDLER(GpuMsg_RelinquishResources, OnRelinquishResources) 123 IPC_MESSAGE_HANDLER(GpuMsg_RelinquishResources, OnRelinquishResources)
123 IPC_MESSAGE_HANDLER(GpuMsg_UpdateValueState, OnUpdateValueState) 124 IPC_MESSAGE_HANDLER(GpuMsg_UpdateValueState, OnUpdateValueState)
124 IPC_MESSAGE_UNHANDLED(handled = false) 125 IPC_MESSAGE_UNHANDLED(handled = false)
125 IPC_END_MESSAGE_MAP() 126 IPC_END_MESSAGE_MAP()
126 return handled; 127 return handled;
127 } 128 }
128 129
129 bool GpuChannelManager::Send(IPC::Message* msg) { return router_->Send(msg); } 130 bool GpuChannelManager::Send(IPC::Message* msg) { return router_->Send(msg); }
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
191 192
192 GpuChannelMap::const_iterator iter = gpu_channels_.find(client_id); 193 GpuChannelMap::const_iterator iter = gpu_channels_.find(client_id);
193 if (iter != gpu_channels_.end()) { 194 if (iter != gpu_channels_.end()) {
194 result = iter->second->CreateViewCommandBuffer( 195 result = iter->second->CreateViewCommandBuffer(
195 window, surface_id, init_params, route_id); 196 window, surface_id, init_params, route_id);
196 } 197 }
197 198
198 Send(new GpuHostMsg_CommandBufferCreated(result)); 199 Send(new GpuHostMsg_CommandBufferCreated(result));
199 } 200 }
200 201
202 void GpuChannelManager::OnCreateStreamTexture(int32 image_id,
203 int32 client_id,
204 int32 route_id,
205 int32 stream_id) {
206 bool result = false;
207 GpuChannelMap::const_iterator iter = gpu_channels_.find(client_id);
208 if (iter != gpu_channels_.end()) {
209 result = iter->second->CreateStreamTexture(image_id, route_id, stream_id);
210 }
211
212 Send(new GpuHostMsg_StreamTextureCreated(result));
213 }
214
201 void GpuChannelManager::DestroyGpuMemoryBuffer( 215 void GpuChannelManager::DestroyGpuMemoryBuffer(
202 gfx::GpuMemoryBufferId id, 216 gfx::GpuMemoryBufferId id,
203 int client_id) { 217 int client_id) {
204 io_task_runner_->PostTask( 218 io_task_runner_->PostTask(
205 FROM_HERE, base::Bind(&GpuChannelManager::DestroyGpuMemoryBufferOnIO, 219 FROM_HERE, base::Bind(&GpuChannelManager::DestroyGpuMemoryBufferOnIO,
206 base::Unretained(this), id, client_id)); 220 base::Unretained(this), id, client_id));
207 } 221 }
208 222
209 void GpuChannelManager::DestroyGpuMemoryBufferOnIO( 223 void GpuChannelManager::DestroyGpuMemoryBufferOnIO(
210 gfx::GpuMemoryBufferId id, 224 gfx::GpuMemoryBufferId id,
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 OnResourcesRelinquished(); 321 OnResourcesRelinquished();
308 #endif 322 #endif
309 } 323 }
310 } 324 }
311 325
312 void GpuChannelManager::OnResourcesRelinquished() { 326 void GpuChannelManager::OnResourcesRelinquished() {
313 Send(new GpuHostMsg_ResourcesRelinquished()); 327 Send(new GpuHostMsg_ResourcesRelinquished());
314 } 328 }
315 329
316 } // namespace content 330 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698