Index: Source/core/compositing/DisplayListCompositingBuilder.h |
diff --git a/Source/core/compositing/DisplayListCompositingBuilder.h b/Source/core/compositing/DisplayListCompositingBuilder.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..dd699051174030d145ba004a2803ef9586eedc1e |
--- /dev/null |
+++ b/Source/core/compositing/DisplayListCompositingBuilder.h |
@@ -0,0 +1,41 @@ |
+// Copyright 2015 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef DisplayListCompositingBuilder_h |
+#define DisplayListCompositingBuilder_h |
+ |
+#include "platform/graphics/GraphicsLayer.h" |
+#include "platform/graphics/paint/DisplayItemList.h" |
+#include "platform/graphics/paint/DisplayItemTransformTree.h" |
+ |
+namespace blink { |
+ |
+struct CompositedDisplayList { |
+ WTF_MAKE_NONCOPYABLE(CompositedDisplayList); |
+ WTF_MAKE_FAST_ALLOCATED(CompositedDisplayList); |
+public: |
+ CompositedDisplayList(const DisplayItemList& displayItemList, const DisplayListDiff& displayListDiff, GraphicsLayer& rootGraphicsLayer) |
+ : m_displayItemList(displayItemList) |
+ , m_displayListDiff(displayListDiff) |
+ , m_rootGraphicsLayer(rootGraphicsLayer) { } |
+ |
+ const DisplayItemList& m_displayItemList; |
+ const DisplayListDiff& m_displayListDiff; |
+ GraphicsLayer& m_rootGraphicsLayer; |
+}; |
+ |
+class DisplayListCompositingBuilder { |
+public: |
+ DisplayListCompositingBuilder(CompositedDisplayList& compositedDisplayList) |
+ : m_compositedDisplayList(compositedDisplayList) {} |
+ |
+ void build(); |
+ |
+private: |
+ CompositedDisplayList& m_compositedDisplayList; |
+}; |
+ |
+} // namespace blink |
+ |
+#endif // DisplayListCompositingBuilder_h |