| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "cc/raster/one_copy_tile_task_worker_pool.h" | 5 #include "cc/raster/one_copy_tile_task_worker_pool.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <limits> | 8 #include <limits> |
| 9 | 9 |
| 10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
| (...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 359 | 359 |
| 360 base::AutoLock lock(lock_); | 360 base::AutoLock lock(lock_); |
| 361 | 361 |
| 362 CopySequenceNumber sequence = 0; | 362 CopySequenceNumber sequence = 0; |
| 363 int bytes_per_row = (BitsPerPixel(raster_resource->format()) * | 363 int bytes_per_row = (BitsPerPixel(raster_resource->format()) * |
| 364 raster_resource->size().width()) / | 364 raster_resource->size().width()) / |
| 365 8; | 365 8; |
| 366 int chunk_size_in_rows = | 366 int chunk_size_in_rows = |
| 367 std::max(1, max_bytes_per_copy_operation_ / bytes_per_row); | 367 std::max(1, max_bytes_per_copy_operation_ / bytes_per_row); |
| 368 // Align chunk size to 4. Required to support compressed texture formats. | 368 // Align chunk size to 4. Required to support compressed texture formats. |
| 369 chunk_size_in_rows = MathUtil::RoundUp(chunk_size_in_rows, 4); | 369 chunk_size_in_rows = MathUtil::UncheckedRoundUp(chunk_size_in_rows, 4); |
| 370 int y = 0; | 370 int y = 0; |
| 371 int height = raster_resource->size().height(); | 371 int height = raster_resource->size().height(); |
| 372 while (y < height) { | 372 while (y < height) { |
| 373 int failed_attempts = 0; | 373 int failed_attempts = 0; |
| 374 while ((pending_copy_operations_.size() + issued_copy_operation_count_) >= | 374 while ((pending_copy_operations_.size() + issued_copy_operation_count_) >= |
| 375 kMaxCopyOperations) { | 375 kMaxCopyOperations) { |
| 376 // Ignore limit when shutdown is set. | 376 // Ignore limit when shutdown is set. |
| 377 if (shutdown_) | 377 if (shutdown_) |
| 378 break; | 378 break; |
| 379 | 379 |
| (...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 581 "pending_copy_count", | 581 "pending_copy_count", |
| 582 static_cast<int>(resource_pool_->total_resource_count() - | 582 static_cast<int>(resource_pool_->total_resource_count() - |
| 583 resource_pool_->acquired_resource_count())); | 583 resource_pool_->acquired_resource_count())); |
| 584 staging_state->SetInteger( | 584 staging_state->SetInteger( |
| 585 "bytes_pending_copy", | 585 "bytes_pending_copy", |
| 586 static_cast<int>(resource_pool_->total_memory_usage_bytes() - | 586 static_cast<int>(resource_pool_->total_memory_usage_bytes() - |
| 587 resource_pool_->acquired_memory_usage_bytes())); | 587 resource_pool_->acquired_memory_usage_bytes())); |
| 588 } | 588 } |
| 589 | 589 |
| 590 } // namespace cc | 590 } // namespace cc |
| OLD | NEW |