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

Side by Side Diff: content/browser/gpu/browser_gpu_memory_buffer_manager.cc

Issue 2133083002: Remove all remaining traces of MessageLoopProxy. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/browser/gpu/browser_gpu_memory_buffer_manager.h" 5 #include "content/browser/gpu/browser_gpu_memory_buffer_manager.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 444 matching lines...) Expand 10 before | Expand all | Expand 10 after
455 new_id, BufferInfo(request->size, gfx::SHARED_MEMORY_BUFFER, 455 new_id, BufferInfo(request->size, gfx::SHARED_MEMORY_BUFFER,
456 request->format, request->usage, 0))); 456 request->format, request->usage, 0)));
457 DCHECK(insert_result.second); 457 DCHECK(insert_result.second);
458 458
459 // Note: Unretained is safe as IO thread is stopped before manager is 459 // Note: Unretained is safe as IO thread is stopped before manager is
460 // destroyed. 460 // destroyed.
461 request->result = gpu::GpuMemoryBufferImplSharedMemory::Create( 461 request->result = gpu::GpuMemoryBufferImplSharedMemory::Create(
462 new_id, request->size, request->format, 462 new_id, request->size, request->format,
463 base::Bind( 463 base::Bind(
464 &GpuMemoryBufferDeleted, 464 &GpuMemoryBufferDeleted,
465 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO), 465 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO),
466 base::Bind(&BrowserGpuMemoryBufferManager::DestroyGpuMemoryBufferOnIO, 466 base::Bind(&BrowserGpuMemoryBufferManager::DestroyGpuMemoryBufferOnIO,
467 base::Unretained(this), new_id, request->client_id))); 467 base::Unretained(this), new_id, request->client_id)));
468 request->event.Signal(); 468 request->event.Signal();
469 } 469 }
470 470
471 void BrowserGpuMemoryBufferManager::HandleCreateGpuMemoryBufferFromHandleOnIO( 471 void BrowserGpuMemoryBufferManager::HandleCreateGpuMemoryBufferFromHandleOnIO(
472 CreateGpuMemoryBufferFromHandleRequest* request) { 472 CreateGpuMemoryBufferFromHandleRequest* request) {
473 DCHECK_CURRENTLY_ON(BrowserThread::IO); 473 DCHECK_CURRENTLY_ON(BrowserThread::IO);
474 474
475 gfx::GpuMemoryBufferId new_id = content::GetNextGenericSharedMemoryId(); 475 gfx::GpuMemoryBufferId new_id = content::GetNextGenericSharedMemoryId();
476 476
477 BufferMap& buffers = clients_[request->client_id]; 477 BufferMap& buffers = clients_[request->client_id];
478 auto insert_result = buffers.insert(std::make_pair( 478 auto insert_result = buffers.insert(std::make_pair(
479 new_id, BufferInfo(request->size, request->handle.type, 479 new_id, BufferInfo(request->size, request->handle.type,
480 request->format, request->usage, 0))); 480 request->format, request->usage, 0)));
481 DCHECK(insert_result.second); 481 DCHECK(insert_result.second);
482 482
483 gfx::GpuMemoryBufferHandle handle = request->handle; 483 gfx::GpuMemoryBufferHandle handle = request->handle;
484 handle.id = new_id; 484 handle.id = new_id;
485 485
486 // Note: Unretained is safe as IO thread is stopped before manager is 486 // Note: Unretained is safe as IO thread is stopped before manager is
487 // destroyed. 487 // destroyed.
488 request->result = gpu::GpuMemoryBufferImpl::CreateFromHandle( 488 request->result = gpu::GpuMemoryBufferImpl::CreateFromHandle(
489 handle, request->size, request->format, request->usage, 489 handle, request->size, request->format, request->usage,
490 base::Bind( 490 base::Bind(
491 &GpuMemoryBufferDeleted, 491 &GpuMemoryBufferDeleted,
492 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO), 492 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO),
493 base::Bind(&BrowserGpuMemoryBufferManager::DestroyGpuMemoryBufferOnIO, 493 base::Bind(&BrowserGpuMemoryBufferManager::DestroyGpuMemoryBufferOnIO,
494 base::Unretained(this), new_id, request->client_id))); 494 base::Unretained(this), new_id, request->client_id)));
495 request->event.Signal(); 495 request->event.Signal();
496 } 496 }
497 497
498 void BrowserGpuMemoryBufferManager::HandleGpuMemoryBufferCreatedOnIO( 498 void BrowserGpuMemoryBufferManager::HandleGpuMemoryBufferCreatedOnIO(
499 CreateGpuMemoryBufferRequest* request, 499 CreateGpuMemoryBufferRequest* request,
500 const gfx::GpuMemoryBufferHandle& handle) { 500 const gfx::GpuMemoryBufferHandle& handle) {
501 DCHECK_CURRENTLY_ON(BrowserThread::IO); 501 DCHECK_CURRENTLY_ON(BrowserThread::IO);
502 502
503 // Early out if factory failed to create the buffer. 503 // Early out if factory failed to create the buffer.
504 if (handle.is_null()) { 504 if (handle.is_null()) {
505 request->event.Signal(); 505 request->event.Signal();
506 return; 506 return;
507 } 507 }
508 508
509 // Note: Unretained is safe as IO thread is stopped before manager is 509 // Note: Unretained is safe as IO thread is stopped before manager is
510 // destroyed. 510 // destroyed.
511 request->result = gpu::GpuMemoryBufferImpl::CreateFromHandle( 511 request->result = gpu::GpuMemoryBufferImpl::CreateFromHandle(
512 handle, request->size, request->format, request->usage, 512 handle, request->size, request->format, request->usage,
513 base::Bind( 513 base::Bind(
514 &GpuMemoryBufferDeleted, 514 &GpuMemoryBufferDeleted,
515 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO), 515 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO),
516 base::Bind(&BrowserGpuMemoryBufferManager::DestroyGpuMemoryBufferOnIO, 516 base::Bind(&BrowserGpuMemoryBufferManager::DestroyGpuMemoryBufferOnIO,
517 base::Unretained(this), handle.id, request->client_id))); 517 base::Unretained(this), handle.id, request->client_id)));
518 request->event.Signal(); 518 request->event.Signal();
519 } 519 }
520 520
521 void BrowserGpuMemoryBufferManager::CreateGpuMemoryBufferOnIO( 521 void BrowserGpuMemoryBufferManager::CreateGpuMemoryBufferOnIO(
522 const CreateDelegate& create_delegate, 522 const CreateDelegate& create_delegate,
523 gfx::GpuMemoryBufferId id, 523 gfx::GpuMemoryBufferId id,
524 const gfx::Size& size, 524 const gfx::Size& size,
525 gfx::BufferFormat format, 525 gfx::BufferFormat format,
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
697 format(format), 697 format(format),
698 usage(usage), 698 usage(usage),
699 gpu_host_id(gpu_host_id) {} 699 gpu_host_id(gpu_host_id) {}
700 700
701 BrowserGpuMemoryBufferManager::BufferInfo::BufferInfo(const BufferInfo& other) = 701 BrowserGpuMemoryBufferManager::BufferInfo::BufferInfo(const BufferInfo& other) =
702 default; 702 default;
703 703
704 BrowserGpuMemoryBufferManager::BufferInfo::~BufferInfo() {} 704 BrowserGpuMemoryBufferManager::BufferInfo::~BufferInfo() {}
705 705
706 } // namespace content 706 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/gpu/browser_gpu_channel_host_factory.cc ('k') | content/browser/gpu/gpu_process_host_ui_shim.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698