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/test/pixel_test.h" | 5 #include "cc/test/pixel_test.h" |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/memory/ptr_util.h" | |
9 #include "base/path_service.h" | 8 #include "base/path_service.h" |
10 #include "base/run_loop.h" | 9 #include "base/run_loop.h" |
11 #include "base/thread_task_runner_handle.h" | 10 #include "base/thread_task_runner_handle.h" |
12 #include "cc/base/switches.h" | 11 #include "cc/base/switches.h" |
13 #include "cc/output/compositor_frame_metadata.h" | 12 #include "cc/output/compositor_frame_metadata.h" |
14 #include "cc/output/copy_output_request.h" | 13 #include "cc/output/copy_output_request.h" |
15 #include "cc/output/copy_output_result.h" | 14 #include "cc/output/copy_output_result.h" |
16 #include "cc/output/gl_renderer.h" | 15 #include "cc/output/gl_renderer.h" |
17 #include "cc/output/output_surface_client.h" | 16 #include "cc/output/output_surface_client.h" |
18 #include "cc/output/software_renderer.h" | 17 #include "cc/output/software_renderer.h" |
19 #include "cc/output/texture_mailbox_deleter.h" | 18 #include "cc/output/texture_mailbox_deleter.h" |
20 #include "cc/raster/tile_task_worker_pool.h" | 19 #include "cc/raster/tile_task_worker_pool.h" |
21 #include "cc/resources/resource_provider.h" | 20 #include "cc/resources/resource_provider.h" |
| 21 #include "cc/scheduler/begin_frame_source.h" |
22 #include "cc/test/fake_output_surface_client.h" | 22 #include "cc/test/fake_output_surface_client.h" |
23 #include "cc/test/paths.h" | 23 #include "cc/test/paths.h" |
24 #include "cc/test/pixel_test_output_surface.h" | 24 #include "cc/test/pixel_test_output_surface.h" |
25 #include "cc/test/pixel_test_software_output_device.h" | 25 #include "cc/test/pixel_test_software_output_device.h" |
26 #include "cc/test/pixel_test_utils.h" | 26 #include "cc/test/pixel_test_utils.h" |
27 #include "cc/test/test_gpu_memory_buffer_manager.h" | 27 #include "cc/test/test_gpu_memory_buffer_manager.h" |
28 #include "cc/test/test_in_process_context_provider.h" | 28 #include "cc/test/test_in_process_context_provider.h" |
29 #include "cc/test/test_shared_bitmap_manager.h" | 29 #include "cc/test/test_shared_bitmap_manager.h" |
30 #include "cc/trees/blocking_task_runner.h" | 30 #include "cc/trees/blocking_task_runner.h" |
31 #include "gpu/command_buffer/client/gles2_interface.h" | 31 #include "gpu/command_buffer/client/gles2_interface.h" |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
121 } | 121 } |
122 | 122 |
123 void PixelTest::SetUpGLRenderer(bool use_skia_gpu_backend, | 123 void PixelTest::SetUpGLRenderer(bool use_skia_gpu_backend, |
124 bool flipped_output_surface) { | 124 bool flipped_output_surface) { |
125 enable_pixel_output_.reset(new gfx::DisableNullDrawGLBindings); | 125 enable_pixel_output_.reset(new gfx::DisableNullDrawGLBindings); |
126 | 126 |
127 scoped_refptr<TestInProcessContextProvider> compositor( | 127 scoped_refptr<TestInProcessContextProvider> compositor( |
128 new TestInProcessContextProvider(nullptr)); | 128 new TestInProcessContextProvider(nullptr)); |
129 scoped_refptr<TestInProcessContextProvider> worker( | 129 scoped_refptr<TestInProcessContextProvider> worker( |
130 new TestInProcessContextProvider(compositor.get())); | 130 new TestInProcessContextProvider(compositor.get())); |
131 output_surface_.reset(new PixelTestOutputSurface( | 131 output_surface_.reset( |
132 std::move(compositor), std::move(worker), flipped_output_surface)); | 132 new PixelTestOutputSurface(std::move(compositor), std::move(worker), |
| 133 flipped_output_surface, nullptr)); |
133 output_surface_->BindToClient(output_surface_client_.get()); | 134 output_surface_->BindToClient(output_surface_client_.get()); |
134 | 135 |
135 shared_bitmap_manager_.reset(new TestSharedBitmapManager); | 136 shared_bitmap_manager_.reset(new TestSharedBitmapManager); |
136 gpu_memory_buffer_manager_.reset(new TestGpuMemoryBufferManager); | 137 gpu_memory_buffer_manager_.reset(new TestGpuMemoryBufferManager); |
137 resource_provider_ = ResourceProvider::Create( | 138 resource_provider_ = ResourceProvider::Create( |
138 output_surface_.get(), shared_bitmap_manager_.get(), | 139 output_surface_.get(), shared_bitmap_manager_.get(), |
139 gpu_memory_buffer_manager_.get(), main_thread_task_runner_.get(), 0, 1, | 140 gpu_memory_buffer_manager_.get(), main_thread_task_runner_.get(), 0, 1, |
140 settings_.renderer_settings.use_gpu_memory_buffer_resources, | 141 settings_.renderer_settings.use_gpu_memory_buffer_resources, |
141 settings_.use_image_texture_targets); | 142 settings_.use_image_texture_targets); |
142 | 143 |
(...skipping 24 matching lines...) Expand all Loading... |
167 } | 168 } |
168 | 169 |
169 void PixelTest::EnableExternalStencilTest() { | 170 void PixelTest::EnableExternalStencilTest() { |
170 static_cast<PixelTestOutputSurface*>(output_surface_.get()) | 171 static_cast<PixelTestOutputSurface*>(output_surface_.get()) |
171 ->set_has_external_stencil_test(true); | 172 ->set_has_external_stencil_test(true); |
172 } | 173 } |
173 | 174 |
174 void PixelTest::SetUpSoftwareRenderer() { | 175 void PixelTest::SetUpSoftwareRenderer() { |
175 std::unique_ptr<SoftwareOutputDevice> device( | 176 std::unique_ptr<SoftwareOutputDevice> device( |
176 new PixelTestSoftwareOutputDevice()); | 177 new PixelTestSoftwareOutputDevice()); |
177 output_surface_.reset(new PixelTestOutputSurface(std::move(device))); | 178 output_surface_.reset(new PixelTestOutputSurface(std::move(device), nullptr)); |
178 output_surface_->BindToClient(output_surface_client_.get()); | 179 output_surface_->BindToClient(output_surface_client_.get()); |
179 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 180 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
180 resource_provider_ = ResourceProvider::Create( | 181 resource_provider_ = ResourceProvider::Create( |
181 output_surface_.get(), shared_bitmap_manager_.get(), | 182 output_surface_.get(), shared_bitmap_manager_.get(), |
182 gpu_memory_buffer_manager_.get(), main_thread_task_runner_.get(), 0, 1, | 183 gpu_memory_buffer_manager_.get(), main_thread_task_runner_.get(), 0, 1, |
183 settings_.renderer_settings.use_gpu_memory_buffer_resources, | 184 settings_.renderer_settings.use_gpu_memory_buffer_resources, |
184 settings_.use_image_texture_targets); | 185 settings_.use_image_texture_targets); |
185 renderer_ = | 186 renderer_ = |
186 SoftwareRenderer::Create(this, &settings_.renderer_settings, | 187 SoftwareRenderer::Create(this, &settings_.renderer_settings, |
187 output_surface_.get(), resource_provider_.get()); | 188 output_surface_.get(), resource_provider_.get()); |
188 } | 189 } |
189 | 190 |
190 } // namespace cc | 191 } // namespace cc |
OLD | NEW |