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

Side by Side Diff: gpu/command_buffer/tests/gl_manager.cc

Issue 962723002: Change CHROMIUM_image declarations to support multi planar input. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Handle through IPC. Created 5 years, 9 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 "gpu/command_buffer/tests/gl_manager.h" 5 #include "gpu/command_buffer/tests/gl_manager.h"
6 6
7 #include <GLES2/gl2.h> 7 #include <GLES2/gl2.h>
8 #include <GLES2/gl2ext.h> 8 #include <GLES2/gl2ext.h>
9 #include <GLES2/gl2extchromium.h> 9 #include <GLES2/gl2extchromium.h>
10 10
(...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after
358 } 358 }
359 359
360 bool GLManager::GetBufferChanged(int32 transfer_buffer_id) { 360 bool GLManager::GetBufferChanged(int32 transfer_buffer_id) {
361 return gpu_scheduler_->SetGetBuffer(transfer_buffer_id); 361 return gpu_scheduler_->SetGetBuffer(transfer_buffer_id);
362 } 362 }
363 363
364 Capabilities GLManager::GetCapabilities() { 364 Capabilities GLManager::GetCapabilities() {
365 return decoder_->GetCapabilities(); 365 return decoder_->GetCapabilities();
366 } 366 }
367 367
368 int32 GLManager::CreateImage(ClientBuffer buffer, 368 int32 GLManager::CreateImage(ClientBuffer* const buffers,
369 size_t width, 369 size_t width,
370 size_t height, 370 size_t height,
371 unsigned internalformat) { 371 unsigned internalformat) {
372 // TODO(emircan): See http://crbug.com/439520; support passing multiple
373 // buffers when new multi-planar formats are added.
372 GpuMemoryBufferImpl* gpu_memory_buffer = 374 GpuMemoryBufferImpl* gpu_memory_buffer =
373 GpuMemoryBufferImpl::FromClientBuffer(buffer); 375 GpuMemoryBufferImpl::FromClientBuffer(buffers[0]);
374 376
375 scoped_refptr<gfx::GLImageRefCountedMemory> image( 377 scoped_refptr<gfx::GLImageRefCountedMemory> image(
376 new gfx::GLImageRefCountedMemory(gfx::Size(width, height), 378 new gfx::GLImageRefCountedMemory(gfx::Size(width, height),
377 internalformat)); 379 internalformat));
378 if (!image->Initialize(gpu_memory_buffer->bytes(), 380 if (!image->Initialize(gpu_memory_buffer->bytes(),
379 gpu_memory_buffer->GetFormat())) { 381 gpu_memory_buffer->GetFormat())) {
380 return -1; 382 return -1;
381 } 383 }
382 384
383 static int32 next_id = 1; 385 static int32 next_id = 1;
384 int32 new_id = next_id++; 386 int32 new_id = next_id++;
385 387
386 gpu::gles2::ImageManager* image_manager = decoder_->GetImageManager(); 388 gpu::gles2::ImageManager* image_manager = decoder_->GetImageManager();
387 DCHECK(image_manager); 389 DCHECK(image_manager);
388 image_manager->AddImage(image.get(), new_id); 390 image_manager->AddImage(image.get(), new_id);
389 return new_id; 391 return new_id;
390 } 392 }
391 393
392 int32 GLManager::CreateGpuMemoryBufferImage(size_t width, 394 int32 GLManager::CreateGpuMemoryBufferImage(size_t width,
393 size_t height, 395 size_t height,
394 unsigned internalformat, 396 unsigned internalformat,
395 unsigned usage) { 397 unsigned usage) {
396 DCHECK_EQ(usage, static_cast<unsigned>(GL_MAP_CHROMIUM)); 398 DCHECK_EQ(usage, static_cast<unsigned>(GL_MAP_CHROMIUM));
397 scoped_ptr<gfx::GpuMemoryBuffer> buffer = GLManager::CreateGpuMemoryBuffer( 399 scoped_ptr<gfx::GpuMemoryBuffer> buffer = GLManager::CreateGpuMemoryBuffer(
398 gfx::Size(width, height), gfx::GpuMemoryBuffer::RGBA_8888); 400 gfx::Size(width, height), gfx::GpuMemoryBuffer::RGBA_8888);
399 return CreateImage(buffer->AsClientBuffer(), width, height, internalformat); 401 ClientBuffer buffers[] = {buffer->AsClientBuffer()};
402 return CreateImage(buffers, width, height, internalformat);
400 } 403 }
401 404
402 void GLManager::DestroyImage(int32 id) { 405 void GLManager::DestroyImage(int32 id) {
403 gpu::gles2::ImageManager* image_manager = decoder_->GetImageManager(); 406 gpu::gles2::ImageManager* image_manager = decoder_->GetImageManager();
404 DCHECK(image_manager); 407 DCHECK(image_manager);
405 image_manager->RemoveImage(id); 408 image_manager->RemoveImage(id);
406 } 409 }
407 410
408 uint32 GLManager::InsertSyncPoint() { 411 uint32 GLManager::InsertSyncPoint() {
409 NOTIMPLEMENTED(); 412 NOTIMPLEMENTED();
(...skipping 25 matching lines...) Expand all
435 uint32 GLManager::CreateStreamTexture(uint32 texture_id) { 438 uint32 GLManager::CreateStreamTexture(uint32 texture_id) {
436 NOTIMPLEMENTED(); 439 NOTIMPLEMENTED();
437 return 0; 440 return 0;
438 } 441 }
439 442
440 void GLManager::SetLock(base::Lock*) { 443 void GLManager::SetLock(base::Lock*) {
441 NOTIMPLEMENTED(); 444 NOTIMPLEMENTED();
442 } 445 }
443 446
444 } // namespace gpu 447 } // namespace gpu
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698