Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Side by Side Diff: cc/raster/raster_buffer_provider_unittest.cc

Issue 2337913003: Fork cc::OutputSurface into cc::CompositorFrameSink. (Closed)
Patch Set: cfsfork: rebase Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 base::ThreadTaskRunnerHandle::Get().get(), 155 base::ThreadTaskRunnerHandle::Get().get(),
156 base::Bind(&RasterBufferProviderTest::AllTileTasksFinished, 156 base::Bind(&RasterBufferProviderTest::AllTileTasksFinished,
157 base::Unretained(this))), 157 base::Unretained(this))),
158 timeout_seconds_(5), 158 timeout_seconds_(5),
159 timed_out_(false) {} 159 timed_out_(false) {}
160 160
161 // Overridden from testing::Test: 161 // Overridden from testing::Test:
162 void SetUp() override { 162 void SetUp() override {
163 switch (GetParam()) { 163 switch (GetParam()) {
164 case RASTER_BUFFER_PROVIDER_TYPE_ZERO_COPY: 164 case RASTER_BUFFER_PROVIDER_TYPE_ZERO_COPY:
165 Create3dOutputSurfaceAndResourceProvider(); 165 Create3dResourceProvider();
166 raster_buffer_provider_ = ZeroCopyRasterBufferProvider::Create( 166 raster_buffer_provider_ = ZeroCopyRasterBufferProvider::Create(
167 resource_provider_.get(), PlatformColor::BestTextureFormat()); 167 resource_provider_.get(), PlatformColor::BestTextureFormat());
168 break; 168 break;
169 case RASTER_BUFFER_PROVIDER_TYPE_ONE_COPY: 169 case RASTER_BUFFER_PROVIDER_TYPE_ONE_COPY:
170 Create3dOutputSurfaceAndResourceProvider(); 170 Create3dResourceProvider();
171 raster_buffer_provider_ = base::MakeUnique<OneCopyRasterBufferProvider>( 171 raster_buffer_provider_ = base::MakeUnique<OneCopyRasterBufferProvider>(
172 base::ThreadTaskRunnerHandle::Get().get(), context_provider_.get(), 172 base::ThreadTaskRunnerHandle::Get().get(), context_provider_.get(),
173 worker_context_provider_.get(), resource_provider_.get(), 173 worker_context_provider_.get(), resource_provider_.get(),
174 kMaxBytesPerCopyOperation, false, kMaxStagingBuffers, 174 kMaxBytesPerCopyOperation, false, kMaxStagingBuffers,
175 PlatformColor::BestTextureFormat(), false); 175 PlatformColor::BestTextureFormat(), false);
176 break; 176 break;
177 case RASTER_BUFFER_PROVIDER_TYPE_GPU: 177 case RASTER_BUFFER_PROVIDER_TYPE_GPU:
178 Create3dOutputSurfaceAndResourceProvider(); 178 Create3dResourceProvider();
179 raster_buffer_provider_ = base::MakeUnique<GpuRasterBufferProvider>( 179 raster_buffer_provider_ = base::MakeUnique<GpuRasterBufferProvider>(
180 context_provider_.get(), worker_context_provider_.get(), 180 context_provider_.get(), worker_context_provider_.get(),
181 resource_provider_.get(), false, 0, false); 181 resource_provider_.get(), false, 0, false);
182 break; 182 break;
183 case RASTER_BUFFER_PROVIDER_TYPE_BITMAP: 183 case RASTER_BUFFER_PROVIDER_TYPE_BITMAP:
184 CreateSoftwareOutputSurfaceAndResourceProvider(); 184 CreateSoftwareResourceProvider();
185 raster_buffer_provider_ = 185 raster_buffer_provider_ =
186 BitmapRasterBufferProvider::Create(resource_provider_.get()); 186 BitmapRasterBufferProvider::Create(resource_provider_.get());
187 break; 187 break;
188 } 188 }
189 189
190 DCHECK(raster_buffer_provider_); 190 DCHECK(raster_buffer_provider_);
191 191
192 tile_task_manager_ = TileTaskManagerImpl::Create(&task_graph_runner_); 192 tile_task_manager_ = TileTaskManagerImpl::Create(&task_graph_runner_);
193 } 193 }
194 194
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 unsigned id, 272 unsigned id,
273 bool was_canceled) override { 273 bool was_canceled) override {
274 raster_buffer_provider_->ReleaseBufferForRaster(std::move(raster_buffer)); 274 raster_buffer_provider_->ReleaseBufferForRaster(std::move(raster_buffer));
275 RasterTaskResult result; 275 RasterTaskResult result;
276 result.id = id; 276 result.id = id;
277 result.canceled = was_canceled; 277 result.canceled = was_canceled;
278 completed_tasks_.push_back(result); 278 completed_tasks_.push_back(result);
279 } 279 }
280 280
281 private: 281 private:
282 void Create3dOutputSurfaceAndResourceProvider() { 282 void Create3dResourceProvider() {
283 output_surface_ = FakeOutputSurface::Create3d(context_provider_,
284 worker_context_provider_);
285 CHECK(output_surface_->BindToClient(&output_surface_client_));
286 TestWebGraphicsContext3D* context3d = context_provider_->TestContext3d(); 283 TestWebGraphicsContext3D* context3d = context_provider_->TestContext3d();
287 context3d->set_support_sync_query(true); 284 context3d->set_support_sync_query(true);
288 resource_provider_ = FakeResourceProvider::Create( 285 resource_provider_ = FakeResourceProvider::Create(
289 output_surface_.get(), nullptr, &gpu_memory_buffer_manager_); 286 context_provider_.get(), &shared_bitmap_manager_,
287 &gpu_memory_buffer_manager_);
290 } 288 }
291 289
292 void CreateSoftwareOutputSurfaceAndResourceProvider() { 290 void CreateSoftwareResourceProvider() {
293 output_surface_ = FakeOutputSurface::CreateSoftware(
294 base::WrapUnique(new SoftwareOutputDevice));
295 CHECK(output_surface_->BindToClient(&output_surface_client_));
296 resource_provider_ = FakeResourceProvider::Create( 291 resource_provider_ = FakeResourceProvider::Create(
297 output_surface_.get(), &shared_bitmap_manager_, nullptr); 292 nullptr, &shared_bitmap_manager_, &gpu_memory_buffer_manager_);
298 } 293 }
299 294
300 void OnTimeout() { 295 void OnTimeout() {
301 timed_out_ = true; 296 timed_out_ = true;
302 base::MessageLoop::current()->QuitWhenIdle(); 297 base::MessageLoop::current()->QuitWhenIdle();
303 } 298 }
304 299
305 protected: 300 protected:
306 scoped_refptr<TestContextProvider> context_provider_; 301 scoped_refptr<TestContextProvider> context_provider_;
307 scoped_refptr<TestContextProvider> worker_context_provider_; 302 scoped_refptr<TestContextProvider> worker_context_provider_;
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
390 385
391 INSTANTIATE_TEST_CASE_P(RasterBufferProviderTests, 386 INSTANTIATE_TEST_CASE_P(RasterBufferProviderTests,
392 RasterBufferProviderTest, 387 RasterBufferProviderTest,
393 ::testing::Values(RASTER_BUFFER_PROVIDER_TYPE_ZERO_COPY, 388 ::testing::Values(RASTER_BUFFER_PROVIDER_TYPE_ZERO_COPY,
394 RASTER_BUFFER_PROVIDER_TYPE_ONE_COPY, 389 RASTER_BUFFER_PROVIDER_TYPE_ONE_COPY,
395 RASTER_BUFFER_PROVIDER_TYPE_GPU, 390 RASTER_BUFFER_PROVIDER_TYPE_GPU,
396 RASTER_BUFFER_PROVIDER_TYPE_BITMAP)); 391 RASTER_BUFFER_PROVIDER_TYPE_BITMAP));
397 392
398 } // namespace 393 } // namespace
399 } // namespace cc 394 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698