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

Unified Diff: cc/resources/resource_provider.cc

Issue 1251693003: cc: Fix the format of GpuMemoryBuffer for SurfaceTexture (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 5 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/resources/resource_provider.h ('k') | cc/resources/resource_provider_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/resources/resource_provider.cc
diff --git a/cc/resources/resource_provider.cc b/cc/resources/resource_provider.cc
index 204422c187f36353f28ca864006c83cc4c53dbc9..888f7286c464348f457a2308b5c7fec3e9b148a5 100644
--- a/cc/resources/resource_provider.cc
+++ b/cc/resources/resource_provider.cc
@@ -397,12 +397,13 @@ scoped_ptr<ResourceProvider> ResourceProvider::Create(
int highp_threshold_min,
bool use_rgba_4444_texture_format,
size_t id_allocation_chunk_size,
- bool use_persistent_map_for_gpu_memory_buffers) {
+ bool use_persistent_map_for_gpu_memory_buffers,
+ const std::vector<unsigned>& use_image_texture_targets) {
scoped_ptr<ResourceProvider> resource_provider(new ResourceProvider(
output_surface, shared_bitmap_manager, gpu_memory_buffer_manager,
blocking_main_thread_task_runner, highp_threshold_min,
use_rgba_4444_texture_format, id_allocation_chunk_size,
- use_persistent_map_for_gpu_memory_buffers));
+ use_persistent_map_for_gpu_memory_buffers, use_image_texture_targets));
resource_provider->Initialize();
return resource_provider;
}
@@ -1091,7 +1092,8 @@ ResourceProvider::ResourceProvider(
int highp_threshold_min,
bool use_rgba_4444_texture_format,
size_t id_allocation_chunk_size,
- bool use_persistent_map_for_gpu_memory_buffers)
+ bool use_persistent_map_for_gpu_memory_buffers,
+ const std::vector<unsigned>& use_image_texture_targets)
: output_surface_(output_surface),
shared_bitmap_manager_(shared_bitmap_manager),
gpu_memory_buffer_manager_(gpu_memory_buffer_manager),
@@ -1113,7 +1115,8 @@ ResourceProvider::ResourceProvider(
id_allocation_chunk_size_(id_allocation_chunk_size),
use_sync_query_(false),
use_persistent_map_for_gpu_memory_buffers_(
- use_persistent_map_for_gpu_memory_buffers) {
+ use_persistent_map_for_gpu_memory_buffers),
+ use_image_texture_targets_(use_image_texture_targets) {
DCHECK(output_surface_->HasClient());
DCHECK(id_allocation_chunk_size_);
}
@@ -1950,6 +1953,13 @@ GLint ResourceProvider::GetActiveTextureUnit(GLES2Interface* gl) {
return active_unit;
}
+GLenum ResourceProvider::GetImageTextureTarget(ResourceFormat format) {
+ gfx::BufferFormat buffer_format = ToGpuMemoryBufferFormat(format);
+ DCHECK_GT(use_image_texture_targets_.size(),
+ static_cast<size_t>(buffer_format));
+ return use_image_texture_targets_[static_cast<size_t>(buffer_format)];
+}
+
void ResourceProvider::ValidateResource(ResourceId id) const {
DCHECK(thread_checker_.CalledOnValidThread());
DCHECK(id);
« no previous file with comments | « cc/resources/resource_provider.h ('k') | cc/resources/resource_provider_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698