| 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 // A class to emulate GLES2 over command buffers. | 5 // A class to emulate GLES2 over command buffers. |
| 6 | 6 |
| 7 #include "gpu/command_buffer/client/gles2_implementation.h" | 7 #include "gpu/command_buffer/client/gles2_implementation.h" |
| 8 | 8 |
| 9 #include <GLES2/gl2.h> | 9 #include <GLES2/gl2.h> |
| 10 #include <GLES2/gl2ext.h> | 10 #include <GLES2/gl2ext.h> |
| (...skipping 416 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 427 // |aggressively_free_resources_| is true. | 427 // |aggressively_free_resources_| is true. |
| 428 Flush(); | 428 Flush(); |
| 429 } else { | 429 } else { |
| 430 ShallowFlushCHROMIUM(); | 430 ShallowFlushCHROMIUM(); |
| 431 } | 431 } |
| 432 } | 432 } |
| 433 | 433 |
| 434 bool GLES2Implementation::OnMemoryDump( | 434 bool GLES2Implementation::OnMemoryDump( |
| 435 const base::trace_event::MemoryDumpArgs& args, | 435 const base::trace_event::MemoryDumpArgs& args, |
| 436 base::trace_event::ProcessMemoryDump* pmd) { | 436 base::trace_event::ProcessMemoryDump* pmd) { |
| 437 using base::trace_event::MemoryAllocatorDump; |
| 438 using base::trace_event::MemoryDumpLevelOfDetail; |
| 439 |
| 437 if (!transfer_buffer_->HaveBuffer()) | 440 if (!transfer_buffer_->HaveBuffer()) |
| 438 return true; | 441 return true; |
| 439 | 442 |
| 440 const uint64_t tracing_process_id = | 443 const uint64_t tracing_process_id = |
| 441 base::trace_event::MemoryDumpManager::GetInstance() | 444 base::trace_event::MemoryDumpManager::GetInstance() |
| 442 ->GetTracingProcessId(); | 445 ->GetTracingProcessId(); |
| 443 | 446 |
| 444 base::trace_event::MemoryAllocatorDump* dump = pmd->CreateAllocatorDump( | 447 MemoryAllocatorDump* dump = pmd->CreateAllocatorDump(base::StringPrintf( |
| 445 base::StringPrintf("gpu/transfer_buffer_memory/buffer_%d", | 448 "gpu/transfer_buffer_memory/buffer_%d", transfer_buffer_->GetShmId())); |
| 446 transfer_buffer_->GetShmId())); | 449 dump->AddScalar(MemoryAllocatorDump::kNameSize, |
| 447 dump->AddScalar(base::trace_event::MemoryAllocatorDump::kNameSize, | 450 MemoryAllocatorDump::kUnitsBytes, |
| 448 base::trace_event::MemoryAllocatorDump::kUnitsBytes, | |
| 449 transfer_buffer_->GetSize()); | 451 transfer_buffer_->GetSize()); |
| 450 dump->AddScalar("free_size", | 452 |
| 451 base::trace_event::MemoryAllocatorDump::kUnitsBytes, | 453 if (args.level_of_detail != MemoryDumpLevelOfDetail::BACKGROUND) { |
| 452 transfer_buffer_->GetFreeSize()); | 454 dump->AddScalar("free_size", MemoryAllocatorDump::kUnitsBytes, |
| 453 auto guid = | 455 transfer_buffer_->GetFreeSize()); |
| 454 GetBufferGUIDForTracing(tracing_process_id, transfer_buffer_->GetShmId()); | 456 auto guid = GetBufferGUIDForTracing(tracing_process_id, |
| 455 const int kImportance = 2; | 457 transfer_buffer_->GetShmId()); |
| 456 pmd->CreateSharedGlobalAllocatorDump(guid); | 458 const int kImportance = 2; |
| 457 pmd->AddOwnershipEdge(dump->guid(), guid, kImportance); | 459 pmd->CreateSharedGlobalAllocatorDump(guid); |
| 460 pmd->AddOwnershipEdge(dump->guid(), guid, kImportance); |
| 461 } |
| 458 | 462 |
| 459 return true; | 463 return true; |
| 460 } | 464 } |
| 461 | 465 |
| 462 void GLES2Implementation::WaitForCmd() { | 466 void GLES2Implementation::WaitForCmd() { |
| 463 TRACE_EVENT0("gpu", "GLES2::WaitForCmd"); | 467 TRACE_EVENT0("gpu", "GLES2::WaitForCmd"); |
| 464 helper_->CommandBufferHelper::Finish(); | 468 helper_->CommandBufferHelper::Finish(); |
| 465 } | 469 } |
| 466 | 470 |
| 467 bool GLES2Implementation::IsExtensionAvailable(const char* ext) { | 471 bool GLES2Implementation::IsExtensionAvailable(const char* ext) { |
| (...skipping 6484 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6952 cached_extensions_.clear(); | 6956 cached_extensions_.clear(); |
| 6953 } | 6957 } |
| 6954 | 6958 |
| 6955 // Include the auto-generated part of this file. We split this because it means | 6959 // Include the auto-generated part of this file. We split this because it means |
| 6956 // we can easily edit the non-auto generated parts right here in this file | 6960 // we can easily edit the non-auto generated parts right here in this file |
| 6957 // instead of having to edit some template or the code generator. | 6961 // instead of having to edit some template or the code generator. |
| 6958 #include "gpu/command_buffer/client/gles2_implementation_impl_autogen.h" | 6962 #include "gpu/command_buffer/client/gles2_implementation_impl_autogen.h" |
| 6959 | 6963 |
| 6960 } // namespace gles2 | 6964 } // namespace gles2 |
| 6961 } // namespace gpu | 6965 } // namespace gpu |
| OLD | NEW |