OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 PaintArtifactCompositor_h | 5 #ifndef PaintArtifactCompositor_h |
6 #define PaintArtifactCompositor_h | 6 #define PaintArtifactCompositor_h |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "platform/PlatformExport.h" | 10 #include "platform/PlatformExport.h" |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 WTF_MAKE_NONCOPYABLE(PaintArtifactCompositor); | 42 WTF_MAKE_NONCOPYABLE(PaintArtifactCompositor); |
43 | 43 |
44 public: | 44 public: |
45 ~PaintArtifactCompositor(); | 45 ~PaintArtifactCompositor(); |
46 | 46 |
47 static std::unique_ptr<PaintArtifactCompositor> create() { | 47 static std::unique_ptr<PaintArtifactCompositor> create() { |
48 return WTF::wrapUnique(new PaintArtifactCompositor()); | 48 return WTF::wrapUnique(new PaintArtifactCompositor()); |
49 } | 49 } |
50 | 50 |
51 // Updates the layer tree to match the provided paint artifact. | 51 // Updates the layer tree to match the provided paint artifact. |
| 52 // |
| 53 // Populates |compositedElementIds| with the CompositorElementId of all |
| 54 // animations for which we saw a paint chunk and created a layer. |
| 55 // |
52 // If |storeDebugInfo| is true, stores detailed debugging information in | 56 // If |storeDebugInfo| is true, stores detailed debugging information in |
53 // the layers that will be output as part of a call to layersAsJSON | 57 // the layers that will be output as part of a call to layersAsJSON |
54 // (if LayerTreeIncludesDebugInfo is specified). | 58 // (if LayerTreeIncludesDebugInfo is specified). |
55 void update( | 59 void update( |
56 const PaintArtifact&, | 60 const PaintArtifact&, |
57 RasterInvalidationTrackingMap<const PaintChunk>* paintChunkInvalidations, | 61 RasterInvalidationTrackingMap<const PaintChunk>* paintChunkInvalidations, |
58 bool storeDebugInfo); | 62 bool storeDebugInfo, |
| 63 CompositorElementIdSet& compositedElementIds); |
59 | 64 |
60 // The root layer of the tree managed by this object. | 65 // The root layer of the tree managed by this object. |
61 cc::Layer* rootLayer() const { return m_rootLayer.get(); } | 66 cc::Layer* rootLayer() const { return m_rootLayer.get(); } |
62 | 67 |
63 // Wraps rootLayer(), so that it can be attached as a child of another | 68 // Wraps rootLayer(), so that it can be attached as a child of another |
64 // WebLayer. | 69 // WebLayer. |
65 WebLayer* getWebLayer() const { return m_webLayer.get(); } | 70 WebLayer* getWebLayer() const { return m_webLayer.get(); } |
66 | 71 |
67 // Returns extra information recorded during unit tests. | 72 // Returns extra information recorded during unit tests. |
68 // While not part of the normal output of this class, this provides a simple | 73 // While not part of the normal output of this class, this provides a simple |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 PendingLayer); | 217 PendingLayer); |
213 FRIEND_TEST_ALL_PREFIXES(PaintArtifactCompositorTestWithPropertyTrees, | 218 FRIEND_TEST_ALL_PREFIXES(PaintArtifactCompositorTestWithPropertyTrees, |
214 PendingLayerWithGeometry); | 219 PendingLayerWithGeometry); |
215 FRIEND_TEST_ALL_PREFIXES(PaintArtifactCompositorTestWithPropertyTrees, | 220 FRIEND_TEST_ALL_PREFIXES(PaintArtifactCompositorTestWithPropertyTrees, |
216 PendingLayerKnownOpaque_DISABLED); | 221 PendingLayerKnownOpaque_DISABLED); |
217 }; | 222 }; |
218 | 223 |
219 } // namespace blink | 224 } // namespace blink |
220 | 225 |
221 #endif // PaintArtifactCompositor_h | 226 #endif // PaintArtifactCompositor_h |
OLD | NEW |