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 "gpu/command_buffer/service/buffer_manager.h" | 5 #include "gpu/command_buffer/service/buffer_manager.h" |
6 #include <limits> | 6 #include <limits> |
7 #include "base/debug/trace_event.h" | 7 #include "base/debug/trace_event.h" |
8 #include "base/logging.h" | 8 #include "base/logging.h" |
9 #include "gpu/command_buffer/common/gles2_cmd_utils.h" | 9 #include "gpu/command_buffer/common/gles2_cmd_utils.h" |
10 #include "gpu/command_buffer/service/error_state.h" | 10 #include "gpu/command_buffer/service/error_state.h" |
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
234 } | 234 } |
235 } | 235 } |
236 return false; | 236 return false; |
237 } | 237 } |
238 | 238 |
239 bool BufferManager::IsUsageClientSideArray(GLenum usage) { | 239 bool BufferManager::IsUsageClientSideArray(GLenum usage) { |
240 return usage == GL_STREAM_DRAW && use_client_side_arrays_for_stream_buffers_; | 240 return usage == GL_STREAM_DRAW && use_client_side_arrays_for_stream_buffers_; |
241 } | 241 } |
242 | 242 |
243 bool BufferManager::UseNonZeroSizeForClientSideArrayBuffer() { | 243 bool BufferManager::UseNonZeroSizeForClientSideArrayBuffer() { |
244 return feature_info_ && feature_info_->workarounds( | 244 return feature_info_.get() && |
245 ).use_non_zero_size_for_client_side_stream_buffers; | 245 feature_info_->workarounds() |
| 246 .use_non_zero_size_for_client_side_stream_buffers; |
246 } | 247 } |
247 | 248 |
248 void BufferManager::SetInfo( | 249 void BufferManager::SetInfo( |
249 Buffer* buffer, GLsizeiptr size, GLenum usage, const GLvoid* data) { | 250 Buffer* buffer, GLsizeiptr size, GLenum usage, const GLvoid* data) { |
250 DCHECK(buffer); | 251 DCHECK(buffer); |
251 memory_tracker_->TrackMemFree(buffer->size()); | 252 memory_tracker_->TrackMemFree(buffer->size()); |
252 bool is_client_side_array = IsUsageClientSideArray(usage); | 253 bool is_client_side_array = IsUsageClientSideArray(usage); |
253 bool shadow = buffer->target() == GL_ELEMENT_ARRAY_BUFFER || | 254 bool shadow = buffer->target() == GL_ELEMENT_ARRAY_BUFFER || |
254 allow_buffers_on_multiple_targets_ || | 255 allow_buffers_on_multiple_targets_ || |
255 is_client_side_array; | 256 is_client_side_array; |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
312 if (buffer->target() == 0) { | 313 if (buffer->target() == 0) { |
313 buffer->set_target(target); | 314 buffer->set_target(target); |
314 } | 315 } |
315 return true; | 316 return true; |
316 } | 317 } |
317 | 318 |
318 } // namespace gles2 | 319 } // namespace gles2 |
319 } // namespace gpu | 320 } // namespace gpu |
320 | 321 |
321 | 322 |
OLD | NEW |