| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "components/mus/gles2/command_buffer_driver.h" | 5 #include "components/mus/gles2/command_buffer_driver.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 46 | 46 |
| 47 // Prevents idle work from being starved. | 47 // Prevents idle work from being starved. |
| 48 const int64_t kMaxTimeSinceIdleMs = 10; | 48 const int64_t kMaxTimeSinceIdleMs = 10; |
| 49 | 49 |
| 50 } // namespace | 50 } // namespace |
| 51 | 51 |
| 52 CommandBufferDriver::Client::~Client() {} | 52 CommandBufferDriver::Client::~Client() {} |
| 53 | 53 |
| 54 CommandBufferDriver::CommandBufferDriver( | 54 CommandBufferDriver::CommandBufferDriver( |
| 55 gpu::CommandBufferNamespace command_buffer_namespace, | 55 gpu::CommandBufferNamespace command_buffer_namespace, |
| 56 uint64_t command_buffer_id, | 56 gpu::CommandBufferId command_buffer_id, |
| 57 gfx::AcceleratedWidget widget, | 57 gfx::AcceleratedWidget widget, |
| 58 scoped_refptr<GpuState> gpu_state) | 58 scoped_refptr<GpuState> gpu_state) |
| 59 : command_buffer_namespace_(command_buffer_namespace), | 59 : command_buffer_namespace_(command_buffer_namespace), |
| 60 command_buffer_id_(command_buffer_id), | 60 command_buffer_id_(command_buffer_id), |
| 61 widget_(widget), | 61 widget_(widget), |
| 62 client_(nullptr), | 62 client_(nullptr), |
| 63 gpu_state_(gpu_state), | 63 gpu_state_(gpu_state), |
| 64 previous_processed_num_(0), | 64 previous_processed_num_(0), |
| 65 weak_factory_(this) { | 65 weak_factory_(this) { |
| 66 DCHECK_EQ(base::ThreadTaskRunnerHandle::Get(), | 66 DCHECK_EQ(base::ThreadTaskRunnerHandle::Get(), |
| (...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 443 } | 443 } |
| 444 | 444 |
| 445 void CommandBufferDriver::OnFenceSyncRelease(uint64_t release) { | 445 void CommandBufferDriver::OnFenceSyncRelease(uint64_t release) { |
| 446 DCHECK(CalledOnValidThread()); | 446 DCHECK(CalledOnValidThread()); |
| 447 if (!sync_point_client_->client_state()->IsFenceSyncReleased(release)) | 447 if (!sync_point_client_->client_state()->IsFenceSyncReleased(release)) |
| 448 sync_point_client_->ReleaseFenceSync(release); | 448 sync_point_client_->ReleaseFenceSync(release); |
| 449 } | 449 } |
| 450 | 450 |
| 451 bool CommandBufferDriver::OnWaitFenceSync( | 451 bool CommandBufferDriver::OnWaitFenceSync( |
| 452 gpu::CommandBufferNamespace namespace_id, | 452 gpu::CommandBufferNamespace namespace_id, |
| 453 uint64_t command_buffer_id, | 453 gpu::CommandBufferId command_buffer_id, |
| 454 uint64_t release) { | 454 uint64_t release) { |
| 455 DCHECK(CalledOnValidThread()); | 455 DCHECK(CalledOnValidThread()); |
| 456 DCHECK(IsScheduled()); | 456 DCHECK(IsScheduled()); |
| 457 gpu::SyncPointManager* sync_point_manager = gpu_state_->sync_point_manager(); | 457 gpu::SyncPointManager* sync_point_manager = gpu_state_->sync_point_manager(); |
| 458 DCHECK(sync_point_manager); | 458 DCHECK(sync_point_manager); |
| 459 | 459 |
| 460 scoped_refptr<gpu::SyncPointClientState> release_state = | 460 scoped_refptr<gpu::SyncPointClientState> release_state = |
| 461 sync_point_manager->GetSyncPointClientState(namespace_id, | 461 sync_point_manager->GetSyncPointClientState(namespace_id, |
| 462 command_buffer_id); | 462 command_buffer_id); |
| 463 | 463 |
| (...skipping 27 matching lines...) Expand all Loading... |
| 491 | 491 |
| 492 gpu::gles2::QueryManager* query_manager = decoder_->GetQueryManager(); | 492 gpu::gles2::QueryManager* query_manager = decoder_->GetQueryManager(); |
| 493 gpu::gles2::QueryManager::Query* query = query_manager->GetQuery(query_id); | 493 gpu::gles2::QueryManager::Query* query = query_manager->GetQuery(query_id); |
| 494 if (query) | 494 if (query) |
| 495 query->AddCallback(callback); | 495 query->AddCallback(callback); |
| 496 else | 496 else |
| 497 callback.Run(); | 497 callback.Run(); |
| 498 } | 498 } |
| 499 | 499 |
| 500 } // namespace mus | 500 } // namespace mus |
| OLD | NEW |