| 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/sync_point_manager.h" | 5 #include "gpu/command_buffer/service/sync_point_manager.h" |
| 6 | 6 |
| 7 #include <limits.h> | 7 #include <limits.h> |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 128 order_fence.client_state->EnsureReleased(order_fence.fence_release); | 128 order_fence.client_state->EnsureReleased(order_fence.fence_release); |
| 129 } | 129 } |
| 130 } | 130 } |
| 131 | 131 |
| 132 SyncPointOrderData::OrderFence::OrderFence( | 132 SyncPointOrderData::OrderFence::OrderFence( |
| 133 uint32_t order, | 133 uint32_t order, |
| 134 uint64_t release, | 134 uint64_t release, |
| 135 scoped_refptr<SyncPointClientState> state) | 135 scoped_refptr<SyncPointClientState> state) |
| 136 : order_num(order), fence_release(release), client_state(state) {} | 136 : order_num(order), fence_release(release), client_state(state) {} |
| 137 | 137 |
| 138 SyncPointOrderData::OrderFence::OrderFence(const OrderFence& other) = default; |
| 139 |
| 138 SyncPointOrderData::OrderFence::~OrderFence() {} | 140 SyncPointOrderData::OrderFence::~OrderFence() {} |
| 139 | 141 |
| 140 SyncPointOrderData::SyncPointOrderData() | 142 SyncPointOrderData::SyncPointOrderData() |
| 141 : current_order_num_(0), | 143 : current_order_num_(0), |
| 142 paused_(false), | 144 paused_(false), |
| 143 destroyed_(false), | 145 destroyed_(false), |
| 144 processed_order_num_(0), | 146 processed_order_num_(0), |
| 145 unprocessed_order_num_(0) {} | 147 unprocessed_order_num_(0) {} |
| 146 | 148 |
| 147 SyncPointOrderData::~SyncPointOrderData() {} | 149 SyncPointOrderData::~SyncPointOrderData() {} |
| (...skipping 22 matching lines...) Expand all Loading... |
| 170 order_fence_queue_.push( | 172 order_fence_queue_.push( |
| 171 OrderFence(expected_order_num, fence_release, client_state)); | 173 OrderFence(expected_order_num, fence_release, client_state)); |
| 172 return true; | 174 return true; |
| 173 } | 175 } |
| 174 | 176 |
| 175 SyncPointClientState::ReleaseCallback::ReleaseCallback( | 177 SyncPointClientState::ReleaseCallback::ReleaseCallback( |
| 176 uint64_t release, | 178 uint64_t release, |
| 177 const base::Closure& callback) | 179 const base::Closure& callback) |
| 178 : release_count(release), callback_closure(callback) {} | 180 : release_count(release), callback_closure(callback) {} |
| 179 | 181 |
| 182 SyncPointClientState::ReleaseCallback::ReleaseCallback( |
| 183 const ReleaseCallback& other) = default; |
| 184 |
| 180 SyncPointClientState::ReleaseCallback::~ReleaseCallback() {} | 185 SyncPointClientState::ReleaseCallback::~ReleaseCallback() {} |
| 181 | 186 |
| 182 SyncPointClientState::SyncPointClientState( | 187 SyncPointClientState::SyncPointClientState( |
| 183 scoped_refptr<SyncPointOrderData> order_data) | 188 scoped_refptr<SyncPointOrderData> order_data) |
| 184 : order_data_(order_data), fence_sync_release_(0) {} | 189 : order_data_(order_data), fence_sync_release_(0) {} |
| 185 | 190 |
| 186 SyncPointClientState::~SyncPointClientState() { | 191 SyncPointClientState::~SyncPointClientState() { |
| 187 } | 192 } |
| 188 | 193 |
| 189 bool SyncPointClientState::WaitForRelease(uint32_t wait_order_num, | 194 bool SyncPointClientState::WaitForRelease(uint32_t wait_order_num, |
| (...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 399 DCHECK_LT(static_cast<size_t>(namespace_id), arraysize(client_maps_)); | 404 DCHECK_LT(static_cast<size_t>(namespace_id), arraysize(client_maps_)); |
| 400 | 405 |
| 401 base::AutoLock auto_lock(client_maps_lock_); | 406 base::AutoLock auto_lock(client_maps_lock_); |
| 402 ClientMap& client_map = client_maps_[namespace_id]; | 407 ClientMap& client_map = client_maps_[namespace_id]; |
| 403 ClientMap::iterator it = client_map.find(client_id); | 408 ClientMap::iterator it = client_map.find(client_id); |
| 404 DCHECK(it != client_map.end()); | 409 DCHECK(it != client_map.end()); |
| 405 client_map.erase(it); | 410 client_map.erase(it); |
| 406 } | 411 } |
| 407 | 412 |
| 408 } // namespace gpu | 413 } // namespace gpu |
| OLD | NEW |