| OLD | NEW |
| 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/client/webgraphicscontext3d_command_buffer_impl.h" | 5 #include "content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.h" |
| 6 | 6 |
| 7 #include "third_party/khronos/GLES2/gl2.h" | 7 #include "third_party/khronos/GLES2/gl2.h" |
| 8 #ifndef GL_GLEXT_PROTOTYPES | 8 #ifndef GL_GLEXT_PROTOTYPES |
| 9 #define GL_GLEXT_PROTOTYPES 1 | 9 #define GL_GLEXT_PROTOTYPES 1 |
| 10 #endif | 10 #endif |
| (...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 233 | 233 |
| 234 if (attributes_.noAutomaticFlushes) | 234 if (attributes_.noAutomaticFlushes) |
| 235 gles2_helper_->SetAutomaticFlushes(false); | 235 gles2_helper_->SetAutomaticFlushes(false); |
| 236 // Create a transfer buffer used to copy resources between the renderer | 236 // Create a transfer buffer used to copy resources between the renderer |
| 237 // process and the GPU process. | 237 // process and the GPU process. |
| 238 transfer_buffer_ .reset(new gpu::TransferBuffer(gles2_helper_.get())); | 238 transfer_buffer_ .reset(new gpu::TransferBuffer(gles2_helper_.get())); |
| 239 | 239 |
| 240 DCHECK(host_.get()); | 240 DCHECK(host_.get()); |
| 241 | 241 |
| 242 // Create the object exposing the OpenGL API. | 242 // Create the object exposing the OpenGL API. |
| 243 bool bind_generates_resources = false; | 243 const bool bind_generates_resources = false; |
| 244 const bool support_client_side_arrays = false; |
| 245 |
| 244 real_gl_.reset( | 246 real_gl_.reset( |
| 245 new gpu::gles2::GLES2Implementation(gles2_helper_.get(), | 247 new gpu::gles2::GLES2Implementation(gles2_helper_.get(), |
| 246 gles2_share_group.get(), | 248 gles2_share_group.get(), |
| 247 transfer_buffer_.get(), | 249 transfer_buffer_.get(), |
| 248 bind_generates_resources, | 250 bind_generates_resources, |
| 249 lose_context_when_out_of_memory_, | 251 lose_context_when_out_of_memory_, |
| 252 support_client_side_arrays, |
| 250 command_buffer_.get())); | 253 command_buffer_.get())); |
| 251 setGLInterface(real_gl_.get()); | 254 setGLInterface(real_gl_.get()); |
| 252 | 255 |
| 253 if (!real_gl_->Initialize( | 256 if (!real_gl_->Initialize( |
| 254 mem_limits_.start_transfer_buffer_size, | 257 mem_limits_.start_transfer_buffer_size, |
| 255 mem_limits_.min_transfer_buffer_size, | 258 mem_limits_.min_transfer_buffer_size, |
| 256 mem_limits_.max_transfer_buffer_size, | 259 mem_limits_.max_transfer_buffer_size, |
| 257 mem_limits_.mapped_memory_reclaim_limit)) { | 260 mem_limits_.mapped_memory_reclaim_limit)) { |
| 258 LOG(ERROR) << "Failed to initialize GLES2Implementation."; | 261 LOG(ERROR) << "Failed to initialize GLES2Implementation."; |
| 259 return false; | 262 return false; |
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 395 share_group_->RemoveAllContexts(); | 398 share_group_->RemoveAllContexts(); |
| 396 | 399 |
| 397 DCHECK(host_.get()); | 400 DCHECK(host_.get()); |
| 398 { | 401 { |
| 399 base::AutoLock lock(g_default_share_groups_lock.Get()); | 402 base::AutoLock lock(g_default_share_groups_lock.Get()); |
| 400 g_default_share_groups.Get().erase(host_.get()); | 403 g_default_share_groups.Get().erase(host_.get()); |
| 401 } | 404 } |
| 402 } | 405 } |
| 403 | 406 |
| 404 } // namespace content | 407 } // namespace content |
| OLD | NEW |