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/layer_tree_pixel_test.h" | 5 #include "cc/test/layer_tree_pixel_test.h" |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/path_service.h" | 8 #include "base/path_service.h" |
9 #include "cc/base/switches.h" | 9 #include "cc/base/switches.h" |
10 #include "cc/layers/solid_color_layer.h" | 10 #include "cc/layers/solid_color_layer.h" |
(...skipping 29 matching lines...) Expand all Loading... |
40 scoped_ptr<PixelTestOutputSurface> output_surface; | 40 scoped_ptr<PixelTestOutputSurface> output_surface; |
41 | 41 |
42 switch (test_type_) { | 42 switch (test_type_) { |
43 case SOFTWARE_WITH_DEFAULT: | 43 case SOFTWARE_WITH_DEFAULT: |
44 case SOFTWARE_WITH_BITMAP: { | 44 case SOFTWARE_WITH_BITMAP: { |
45 scoped_ptr<PixelTestSoftwareOutputDevice> software_output_device( | 45 scoped_ptr<PixelTestSoftwareOutputDevice> software_output_device( |
46 new PixelTestSoftwareOutputDevice); | 46 new PixelTestSoftwareOutputDevice); |
47 software_output_device->set_surface_expansion_size( | 47 software_output_device->set_surface_expansion_size( |
48 surface_expansion_size); | 48 surface_expansion_size); |
49 output_surface = make_scoped_ptr( | 49 output_surface = make_scoped_ptr( |
50 new PixelTestOutputSurface(software_output_device.Pass())); | 50 new PixelTestOutputSurface( |
| 51 software_output_device.PassAs<SoftwareOutputDevice>())); |
51 break; | 52 break; |
52 } | 53 } |
53 | 54 |
54 case GL_WITH_DEFAULT: | 55 case GL_WITH_DEFAULT: |
55 case GL_WITH_BITMAP: { | 56 case GL_WITH_BITMAP: { |
56 output_surface = make_scoped_ptr( | 57 output_surface = make_scoped_ptr( |
57 new PixelTestOutputSurface(new TestInProcessContextProvider)); | 58 new PixelTestOutputSurface(new TestInProcessContextProvider)); |
58 break; | 59 break; |
59 } | 60 } |
60 } | 61 } |
61 | 62 |
62 output_surface->set_surface_expansion_size(surface_expansion_size); | 63 output_surface->set_surface_expansion_size(surface_expansion_size); |
63 return output_surface.Pass(); | 64 return output_surface.PassAs<OutputSurface>(); |
64 } | 65 } |
65 | 66 |
66 void LayerTreePixelTest::CommitCompleteOnThread(LayerTreeHostImpl* impl) { | 67 void LayerTreePixelTest::CommitCompleteOnThread(LayerTreeHostImpl* impl) { |
67 LayerTreeImpl* commit_tree = | 68 LayerTreeImpl* commit_tree = |
68 impl->pending_tree() ? impl->pending_tree() : impl->active_tree(); | 69 impl->pending_tree() ? impl->pending_tree() : impl->active_tree(); |
69 if (commit_tree->source_frame_number() != 0) | 70 if (commit_tree->source_frame_number() != 0) |
70 return; | 71 return; |
71 | 72 |
72 gfx::Rect viewport = impl->DeviceViewport(); | 73 gfx::Rect viewport = impl->DeviceViewport(); |
73 // The viewport has a 0,0 origin without external influence. | 74 // The viewport has a 0,0 origin without external influence. |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
221 root->AddChild(content_root_); | 222 root->AddChild(content_root_); |
222 layer_tree_host()->SetRootLayer(root); | 223 layer_tree_host()->SetRootLayer(root); |
223 LayerTreeTest::SetupTree(); | 224 LayerTreeTest::SetupTree(); |
224 } | 225 } |
225 | 226 |
226 scoped_ptr<SkBitmap> LayerTreePixelTest::CopyTextureMailboxToBitmap( | 227 scoped_ptr<SkBitmap> LayerTreePixelTest::CopyTextureMailboxToBitmap( |
227 const gfx::Size& size, | 228 const gfx::Size& size, |
228 const TextureMailbox& texture_mailbox) { | 229 const TextureMailbox& texture_mailbox) { |
229 DCHECK(texture_mailbox.IsTexture()); | 230 DCHECK(texture_mailbox.IsTexture()); |
230 if (!texture_mailbox.IsTexture()) | 231 if (!texture_mailbox.IsTexture()) |
231 return nullptr; | 232 return scoped_ptr<SkBitmap>(); |
232 | 233 |
233 scoped_ptr<gpu::GLInProcessContext> context = CreateTestInProcessContext(); | 234 scoped_ptr<gpu::GLInProcessContext> context = CreateTestInProcessContext(); |
234 GLES2Interface* gl = context->GetImplementation(); | 235 GLES2Interface* gl = context->GetImplementation(); |
235 | 236 |
236 if (texture_mailbox.sync_point()) | 237 if (texture_mailbox.sync_point()) |
237 gl->WaitSyncPointCHROMIUM(texture_mailbox.sync_point()); | 238 gl->WaitSyncPointCHROMIUM(texture_mailbox.sync_point()); |
238 | 239 |
239 GLuint texture_id = 0; | 240 GLuint texture_id = 0; |
240 gl->GenTextures(1, &texture_id); | 241 gl->GenTextures(1, &texture_id); |
241 gl->BindTexture(GL_TEXTURE_2D, texture_id); | 242 gl->BindTexture(GL_TEXTURE_2D, texture_id); |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
361 | 362 |
362 *texture_mailbox = TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point); | 363 *texture_mailbox = TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point); |
363 *release_callback = SingleReleaseCallback::Create( | 364 *release_callback = SingleReleaseCallback::Create( |
364 base::Bind(&LayerTreePixelTest::ReleaseTextureMailbox, | 365 base::Bind(&LayerTreePixelTest::ReleaseTextureMailbox, |
365 base::Unretained(this), | 366 base::Unretained(this), |
366 base::Passed(&context), | 367 base::Passed(&context), |
367 texture_id)); | 368 texture_id)); |
368 } | 369 } |
369 | 370 |
370 } // namespace cc | 371 } // namespace cc |
OLD | NEW |