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

Side by Side Diff: content/common/cc_messages_unittest.cc

Issue 127373002: Add cc:DrawQuad type for surfaces (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 11 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 | Annotate | Revision Log
« cc/quads/surface_draw_quad.cc ('K') | « content/common/cc_messages.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "content/common/cc_messages.h" 5 #include "content/common/cc_messages.h"
6 6
7 #include <string.h> 7 #include <string.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 10
11 #include "cc/output/compositor_frame.h" 11 #include "cc/output/compositor_frame.h"
12 #include "ipc/ipc_message.h" 12 #include "ipc/ipc_message.h"
13 #include "testing/gtest/include/gtest/gtest.h" 13 #include "testing/gtest/include/gtest/gtest.h"
14 #include "third_party/khronos/GLES2/gl2ext.h" 14 #include "third_party/khronos/GLES2/gl2ext.h"
15 #include "third_party/skia/include/effects/SkBlurImageFilter.h" 15 #include "third_party/skia/include/effects/SkBlurImageFilter.h"
16 16
17 using cc::CheckerboardDrawQuad; 17 using cc::CheckerboardDrawQuad;
18 using cc::DelegatedFrameData; 18 using cc::DelegatedFrameData;
19 using cc::DebugBorderDrawQuad; 19 using cc::DebugBorderDrawQuad;
20 using cc::DrawQuad; 20 using cc::DrawQuad;
21 using cc::FilterOperation; 21 using cc::FilterOperation;
22 using cc::FilterOperations; 22 using cc::FilterOperations;
23 using cc::IOSurfaceDrawQuad; 23 using cc::IOSurfaceDrawQuad;
24 using cc::PictureDrawQuad; 24 using cc::PictureDrawQuad;
25 using cc::RenderPass; 25 using cc::RenderPass;
26 using cc::RenderPassDrawQuad; 26 using cc::RenderPassDrawQuad;
27 using cc::ResourceProvider; 27 using cc::ResourceProvider;
28 using cc::SharedQuadState; 28 using cc::SharedQuadState;
29 using cc::SolidColorDrawQuad; 29 using cc::SolidColorDrawQuad;
30 using cc::SurfaceDrawQuad;
30 using cc::TextureDrawQuad; 31 using cc::TextureDrawQuad;
31 using cc::TileDrawQuad; 32 using cc::TileDrawQuad;
32 using cc::TransferableResource; 33 using cc::TransferableResource;
33 using cc::StreamVideoDrawQuad; 34 using cc::StreamVideoDrawQuad;
34 using cc::VideoLayerImpl; 35 using cc::VideoLayerImpl;
35 using cc::YUVVideoDrawQuad; 36 using cc::YUVVideoDrawQuad;
36 using gfx::Transform; 37 using gfx::Transform;
37 38
38 namespace content { 39 namespace content {
39 namespace { 40 namespace {
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 TileDrawQuad::MaterialCast(b)); 99 TileDrawQuad::MaterialCast(b));
99 break; 100 break;
100 case DrawQuad::SOLID_COLOR: 101 case DrawQuad::SOLID_COLOR:
101 Compare(SolidColorDrawQuad::MaterialCast(a), 102 Compare(SolidColorDrawQuad::MaterialCast(a),
102 SolidColorDrawQuad::MaterialCast(b)); 103 SolidColorDrawQuad::MaterialCast(b));
103 break; 104 break;
104 case DrawQuad::STREAM_VIDEO_CONTENT: 105 case DrawQuad::STREAM_VIDEO_CONTENT:
105 Compare(StreamVideoDrawQuad::MaterialCast(a), 106 Compare(StreamVideoDrawQuad::MaterialCast(a),
106 StreamVideoDrawQuad::MaterialCast(b)); 107 StreamVideoDrawQuad::MaterialCast(b));
107 break; 108 break;
109 case DrawQuad::SURFACE_CONTENT:
110 Compare(SurfaceDrawQuad::MaterialCast(a),
danakj 2014/01/14 18:31:57 This Compare method is not implemented yet.
111 SurfaceDrawQuad::MaterialCast(b));
112 break;
108 case DrawQuad::YUV_VIDEO_CONTENT: 113 case DrawQuad::YUV_VIDEO_CONTENT:
109 Compare(YUVVideoDrawQuad::MaterialCast(a), 114 Compare(YUVVideoDrawQuad::MaterialCast(a),
110 YUVVideoDrawQuad::MaterialCast(b)); 115 YUVVideoDrawQuad::MaterialCast(b));
111 break; 116 break;
112 case DrawQuad::INVALID: 117 case DrawQuad::INVALID:
113 break; 118 break;
114 } 119 }
115 } 120 }
116 121
117 void Compare(const CheckerboardDrawQuad* a, const CheckerboardDrawQuad* b) { 122 void Compare(const CheckerboardDrawQuad* a, const CheckerboardDrawQuad* b) {
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
354 StreamVideoDrawQuad::Create(); 359 StreamVideoDrawQuad::Create();
355 streamvideo_in->SetAll(shared_state3_in.get(), 360 streamvideo_in->SetAll(shared_state3_in.get(),
356 arbitrary_rect2, 361 arbitrary_rect2,
357 arbitrary_rect2_inside_rect2, 362 arbitrary_rect2_inside_rect2,
358 arbitrary_rect1_inside_rect2, 363 arbitrary_rect1_inside_rect2,
359 arbitrary_bool1, 364 arbitrary_bool1,
360 arbitrary_resourceid2, 365 arbitrary_resourceid2,
361 arbitrary_matrix); 366 arbitrary_matrix);
362 scoped_ptr<DrawQuad> streamvideo_cmp = streamvideo_in->Copy( 367 scoped_ptr<DrawQuad> streamvideo_cmp = streamvideo_in->Copy(
363 streamvideo_in->shared_quad_state); 368 streamvideo_in->shared_quad_state);
364 369
danakj 2014/01/14 18:31:57 add a surfacedrawquad into the frame here?
365 scoped_ptr<TextureDrawQuad> texture_in = TextureDrawQuad::Create(); 370 scoped_ptr<TextureDrawQuad> texture_in = TextureDrawQuad::Create();
366 texture_in->SetAll(shared_state3_in.get(), 371 texture_in->SetAll(shared_state3_in.get(),
367 arbitrary_rect2, 372 arbitrary_rect2,
368 arbitrary_rect2_inside_rect2, 373 arbitrary_rect2_inside_rect2,
369 arbitrary_rect1_inside_rect2, 374 arbitrary_rect1_inside_rect2,
370 arbitrary_bool1, 375 arbitrary_bool1,
371 arbitrary_resourceid1, 376 arbitrary_resourceid1,
372 arbitrary_bool2, 377 arbitrary_bool2,
373 arbitrary_pointf1, 378 arbitrary_pointf1,
374 arbitrary_pointf2, 379 arbitrary_pointf2,
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after
690 break; 695 break;
691 case cc::DrawQuad::TEXTURE_CONTENT: 696 case cc::DrawQuad::TEXTURE_CONTENT:
692 largest = std::max(largest, sizeof(cc::TextureDrawQuad)); 697 largest = std::max(largest, sizeof(cc::TextureDrawQuad));
693 break; 698 break;
694 case cc::DrawQuad::RENDER_PASS: 699 case cc::DrawQuad::RENDER_PASS:
695 largest = std::max(largest, sizeof(cc::RenderPassDrawQuad)); 700 largest = std::max(largest, sizeof(cc::RenderPassDrawQuad));
696 break; 701 break;
697 case cc::DrawQuad::SOLID_COLOR: 702 case cc::DrawQuad::SOLID_COLOR:
698 largest = std::max(largest, sizeof(cc::SolidColorDrawQuad)); 703 largest = std::max(largest, sizeof(cc::SolidColorDrawQuad));
699 break; 704 break;
700 case cc::DrawQuad::TILED_CONTENT: 705 case cc::DrawQuad::TILED_CONTENT:
danakj 2014/01/14 18:31:57 add the surface draw quad here
701 largest = std::max(largest, sizeof(cc::TileDrawQuad)); 706 largest = std::max(largest, sizeof(cc::TileDrawQuad));
702 break; 707 break;
703 case cc::DrawQuad::STREAM_VIDEO_CONTENT: 708 case cc::DrawQuad::STREAM_VIDEO_CONTENT:
704 largest = std::max(largest, sizeof(cc::StreamVideoDrawQuad)); 709 largest = std::max(largest, sizeof(cc::StreamVideoDrawQuad));
705 break; 710 break;
706 case cc::DrawQuad::YUV_VIDEO_CONTENT: 711 case cc::DrawQuad::YUV_VIDEO_CONTENT:
707 largest = std::max(largest, sizeof(cc::YUVVideoDrawQuad)); 712 largest = std::max(largest, sizeof(cc::YUVVideoDrawQuad));
708 break; 713 break;
709 case cc::DrawQuad::INVALID: 714 case cc::DrawQuad::INVALID:
710 break; 715 break;
711 default: 716 default:
712 done = true; 717 done = true;
713 } 718 }
714 } 719 }
715 720
716 // Verify the largest DrawQuad type is RenderPassDrawQuad. If this ever 721 // Verify the largest DrawQuad type is RenderPassDrawQuad. If this ever
717 // changes, then the ReserveSizeForRenderPassWrite() method needs to be 722 // changes, then the ReserveSizeForRenderPassWrite() method needs to be
718 // updated as well to use the new largest quad. 723 // updated as well to use the new largest quad.
719 EXPECT_EQ(sizeof(RenderPassDrawQuad), largest); 724 EXPECT_EQ(sizeof(RenderPassDrawQuad), largest);
720 } 725 }
721 726
722 } // namespace 727 } // namespace
723 } // namespace content 728 } // namespace content
OLDNEW
« cc/quads/surface_draw_quad.cc ('K') | « content/common/cc_messages.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698