| 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 "cc/raster/raster_buffer_provider.h" | 5 #include "cc/raster/raster_buffer_provider.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <algorithm> | 10 #include <algorithm> |
| (...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 229 it != tasks_.end(); ++it) { | 229 it != tasks_.end(); ++it) { |
| 230 graph_.nodes.emplace_back(it->get(), 0 /* group */, priority++, | 230 graph_.nodes.emplace_back(it->get(), 0 /* group */, priority++, |
| 231 0 /* dependencies */); | 231 0 /* dependencies */); |
| 232 } | 232 } |
| 233 | 233 |
| 234 raster_buffer_provider_->OrderingBarrier(); | 234 raster_buffer_provider_->OrderingBarrier(); |
| 235 tile_task_manager_->ScheduleTasks(&graph_); | 235 tile_task_manager_->ScheduleTasks(&graph_); |
| 236 } | 236 } |
| 237 | 237 |
| 238 void AppendTask(unsigned id, const gfx::Size& size) { | 238 void AppendTask(unsigned id, const gfx::Size& size) { |
| 239 std::unique_ptr<ScopedResource> resource( | 239 auto resource = base::MakeUnique<ScopedResource>(resource_provider_.get()); |
| 240 ScopedResource::Create(resource_provider_.get())); | |
| 241 resource->Allocate(size, ResourceProvider::TEXTURE_HINT_IMMUTABLE, | 240 resource->Allocate(size, ResourceProvider::TEXTURE_HINT_IMMUTABLE, |
| 242 RGBA_8888, gfx::ColorSpace()); | 241 RGBA_8888, gfx::ColorSpace()); |
| 243 | 242 |
| 244 // The raster buffer has no tile ids associated with it for partial update, | 243 // The raster buffer has no tile ids associated with it for partial update, |
| 245 // so doesn't need to provide a valid dirty rect. | 244 // so doesn't need to provide a valid dirty rect. |
| 246 std::unique_ptr<RasterBuffer> raster_buffer = | 245 std::unique_ptr<RasterBuffer> raster_buffer = |
| 247 raster_buffer_provider_->AcquireBufferForRaster(resource.get(), 0, 0); | 246 raster_buffer_provider_->AcquireBufferForRaster(resource.get(), 0, 0); |
| 248 TileTask::Vector empty; | 247 TileTask::Vector empty; |
| 249 tasks_.push_back( | 248 tasks_.push_back( |
| 250 new TestRasterTaskImpl(this, id, std::move(raster_buffer), &empty)); | 249 new TestRasterTaskImpl(this, id, std::move(raster_buffer), &empty)); |
| 251 resources_.push_back(std::move(resource)); | 250 resources_.push_back(std::move(resource)); |
| 252 } | 251 } |
| 253 | 252 |
| 254 void AppendTask(unsigned id) { AppendTask(id, gfx::Size(1, 1)); } | 253 void AppendTask(unsigned id) { AppendTask(id, gfx::Size(1, 1)); } |
| 255 | 254 |
| 256 void AppendBlockingTask(unsigned id, base::Lock* lock) { | 255 void AppendBlockingTask(unsigned id, base::Lock* lock) { |
| 257 const gfx::Size size(1, 1); | 256 const gfx::Size size(1, 1); |
| 258 | 257 |
| 259 std::unique_ptr<ScopedResource> resource( | 258 auto resource = base::MakeUnique<ScopedResource>(resource_provider_.get()); |
| 260 ScopedResource::Create(resource_provider_.get())); | |
| 261 resource->Allocate(size, ResourceProvider::TEXTURE_HINT_IMMUTABLE, | 259 resource->Allocate(size, ResourceProvider::TEXTURE_HINT_IMMUTABLE, |
| 262 RGBA_8888, gfx::ColorSpace()); | 260 RGBA_8888, gfx::ColorSpace()); |
| 263 | 261 |
| 264 std::unique_ptr<RasterBuffer> raster_buffer = | 262 std::unique_ptr<RasterBuffer> raster_buffer = |
| 265 raster_buffer_provider_->AcquireBufferForRaster(resource.get(), 0, 0); | 263 raster_buffer_provider_->AcquireBufferForRaster(resource.get(), 0, 0); |
| 266 TileTask::Vector empty; | 264 TileTask::Vector empty; |
| 267 tasks_.push_back(new BlockingTestRasterTaskImpl( | 265 tasks_.push_back(new BlockingTestRasterTaskImpl( |
| 268 this, id, std::move(raster_buffer), lock, &empty)); | 266 this, id, std::move(raster_buffer), lock, &empty)); |
| 269 resources_.push_back(std::move(resource)); | 267 resources_.push_back(std::move(resource)); |
| 270 } | 268 } |
| (...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 453 RasterBufferProviderTest, | 451 RasterBufferProviderTest, |
| 454 ::testing::Values(RASTER_BUFFER_PROVIDER_TYPE_ZERO_COPY, | 452 ::testing::Values(RASTER_BUFFER_PROVIDER_TYPE_ZERO_COPY, |
| 455 RASTER_BUFFER_PROVIDER_TYPE_ONE_COPY, | 453 RASTER_BUFFER_PROVIDER_TYPE_ONE_COPY, |
| 456 RASTER_BUFFER_PROVIDER_TYPE_ASYNC_ONE_COPY, | 454 RASTER_BUFFER_PROVIDER_TYPE_ASYNC_ONE_COPY, |
| 457 RASTER_BUFFER_PROVIDER_TYPE_GPU, | 455 RASTER_BUFFER_PROVIDER_TYPE_GPU, |
| 458 RASTER_BUFFER_PROVIDER_TYPE_ASYNC_GPU, | 456 RASTER_BUFFER_PROVIDER_TYPE_ASYNC_GPU, |
| 459 RASTER_BUFFER_PROVIDER_TYPE_BITMAP)); | 457 RASTER_BUFFER_PROVIDER_TYPE_BITMAP)); |
| 460 | 458 |
| 461 } // namespace | 459 } // namespace |
| 462 } // namespace cc | 460 } // namespace cc |
| OLD | NEW |