OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef CC_SURFACES_SURFACE_AGGREGATOR_H_ | 5 #ifndef CC_SURFACES_SURFACE_AGGREGATOR_H_ |
6 #define CC_SURFACES_SURFACE_AGGREGATOR_H_ | 6 #define CC_SURFACES_SURFACE_AGGREGATOR_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 | 9 |
10 #include "base/containers/hash_tables.h" | 10 #include "base/containers/hash_tables.h" |
(...skipping 23 matching lines...) Expand all Loading... |
34 scoped_ptr<CompositorFrame> Aggregate(SurfaceId surface_id); | 34 scoped_ptr<CompositorFrame> Aggregate(SurfaceId surface_id); |
35 SurfaceIndexMap& previous_contained_surfaces() { | 35 SurfaceIndexMap& previous_contained_surfaces() { |
36 return previous_contained_surfaces_; | 36 return previous_contained_surfaces_; |
37 } | 37 } |
38 | 38 |
39 private: | 39 private: |
40 RenderPassId RemapPassId(RenderPassId surface_local_pass_id, | 40 RenderPassId RemapPassId(RenderPassId surface_local_pass_id, |
41 SurfaceId surface_id); | 41 SurfaceId surface_id); |
42 | 42 |
43 void HandleSurfaceQuad(const SurfaceDrawQuad* surface_quad, | 43 void HandleSurfaceQuad(const SurfaceDrawQuad* surface_quad, |
| 44 float opacity, |
44 RenderPass* dest_pass); | 45 RenderPass* dest_pass); |
45 void CopySharedQuadState(const SharedQuadState* source_sqs, | 46 void CopySharedQuadState(const SharedQuadState* source_sqs, |
46 const gfx::Transform& content_to_target_transform, | 47 const gfx::Transform& content_to_target_transform, |
47 RenderPass* dest_render_pass); | 48 RenderPass* dest_render_pass); |
48 void CopyQuadsToPass(const QuadList& source_quad_list, | 49 void CopyQuadsToPass(const QuadList& source_quad_list, |
49 const SharedQuadStateList& source_shared_quad_state_list, | 50 const SharedQuadStateList& source_shared_quad_state_list, |
50 const gfx::Transform& content_to_target_transform, | 51 const gfx::Transform& content_to_target_transform, |
| 52 float opacity, |
51 RenderPass* dest_pass, | 53 RenderPass* dest_pass, |
52 SurfaceId surface_id); | 54 SurfaceId surface_id); |
53 void CopyPasses(const DelegatedFrameData* frame_data, Surface* surface); | 55 void CopyPasses(const DelegatedFrameData* frame_data, Surface* surface); |
54 | 56 |
55 // Remove Surfaces that were referenced before but aren't currently | 57 // Remove Surfaces that were referenced before but aren't currently |
56 // referenced from the ResourceProvider. | 58 // referenced from the ResourceProvider. |
57 void RemoveUnreferencedChildren(); | 59 void RemoveUnreferencedChildren(); |
58 | 60 |
59 bool TakeResources(Surface* surface, | 61 bool TakeResources(Surface* surface, |
60 const DelegatedFrameData* frame_data, | 62 const DelegatedFrameData* frame_data, |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 | 96 |
95 // Resource list for the aggregated frame. | 97 // Resource list for the aggregated frame. |
96 TransferableResourceArray* dest_resource_list_; | 98 TransferableResourceArray* dest_resource_list_; |
97 | 99 |
98 DISALLOW_COPY_AND_ASSIGN(SurfaceAggregator); | 100 DISALLOW_COPY_AND_ASSIGN(SurfaceAggregator); |
99 }; | 101 }; |
100 | 102 |
101 } // namespace cc | 103 } // namespace cc |
102 | 104 |
103 #endif // CC_SURFACES_SURFACE_AGGREGATOR_H_ | 105 #endif // CC_SURFACES_SURFACE_AGGREGATOR_H_ |
OLD | NEW |